sql,java 跪求大神指點(diǎn)
問題描述
為什么我用企業(yè)編號和用戶編號查詢?nèi)坎块T及部門下的人數(shù),返回的數(shù)據(jù)只有一條,數(shù)據(jù)庫表設(shè)計(jì)是:用戶表和企業(yè)表是一對一的,企業(yè)表和部門表是一對多的,以下是我寫的sql:
SELECT count(c.id) AS userCount,b.company_id AS companyId,b.`name` AS `name`
FROM
company_branch b
LEFT JOIN company_personnel_file c ON c.branch_id = b.idAND c.user_id =55AND c. STATUS = 1WHERE
1 = 1
AND b.company_id =10043GROUP BY
b.id
LIMIT 0, 10;
問題解答
回答1:由于你沒有說明,企業(yè)表和部門表的表名是什么,而且SQL中只出現(xiàn)了一個(gè)和企業(yè)或部門有關(guān)的表,我只能猜測它是部門表。基于這個(gè)假設(shè),來說下你的SQL。你的SQL有以下幾個(gè)問題:
你的WHERE 1 = 1是不需要的
LEFT JOIN里的ON語句,是用來限定左聯(lián)上來的這個(gè)表的數(shù)據(jù)的,而不是用來限定結(jié)果數(shù)據(jù)的,要限定結(jié)果數(shù)據(jù)的話得用WHERE子句
修改后的SQL如下:
SELECT COUNT(c.id) userCount, b.company_id companyId, b.name nameFROM company_branch bLEFT JOIN company_personnel_file c ON c.branch_id = b.idWHERE c.user_id = 55 AND c.STATUS = 1 AND b.company_id = 10043GROUP BY b.idLIMIT 0, 10;
相關(guān)文章:
1. nosql - mongodb 多組數(shù)據(jù)不固定字段查詢問題 [百度黨請繞道]2. jdbc - 關(guān)于錯(cuò)誤:java.sql.SQLException: 未調(diào)用 ResultSet.next的問題3. mysql 如何分組?4. python pymysql 執(zhí)行比較時(shí)間的sql語句,在mysql中可以順了執(zhí)行,但是在python中執(zhí)行為何報(bào)錯(cuò)?5. 怎么用mysql語句判斷時(shí)間問題,求大佬6. mysql - PHP定時(shí)通知、按時(shí)發(fā)布怎么做?7. MySQL如何實(shí)現(xiàn)表中再嵌套一個(gè)表?8. mysql - 求SQL語句9. mysql如何判斷數(shù)據(jù)不存在則插入呢?10. mysql - sql 怎么根據(jù)父id查詢下三級子集?
