2016-11-15 125 views
1

表1(student_details)SQL查询 - 获取两个表

是具有532个DATAS不同顾问在表2中的每个数据被分配给一个顾问等

id advisor 
    -- ------- 
    1 Bala 
    2 Shanmugam 
    3 Priya 
    4 Bala 
    etc.. 

Similaly的重复计数:training_details

 id advisor 
     -- ------- 
     1 Bala 

     etc.. 

我试过这个查询,这将返回从table1中单独分配给每个顾问的人数。我只是想从两个表中计数并选择顾问

SELECT DISTINCT t1.advisor as advisor,IFNULL(COUNT(t2.advisor), 0) AS total FROM advisor AS t1 
LEFT JOIN student_details AS t2 ON t1.advisor = t2.advisor AND t2.del!=1 GROUP BY t1.advisor; 

同样我只想加入两个表项并返回不同的顾问程序与2列中的相等计数;

回答

0
SELECT advisor, COUNT(*) as TheCount 
FROM 
    (
    SELECT advisor FROM table 1 
    UNION ALL 
    SELECT advisor FROM table 2 
    ) AS [TheNames] 
GROUP BY advisor 

SELECT x.advisor, COUNT(x.advisor) 
    FROM (SELECT advisor 
      FROM table1 
      UNION ALL 
      SELECT advisor 
      FROM table2 
     ) x 
GROUP BY x.advisor 
+0

这里üdidnt指定anythng关于第二个表 –

+0

雅我得到了result.Is反正有添加Where子句中这个查询 –

+0

从表中选择后,u可以使用... @KavyaShree – Chanukya