Maison > Questions et réponses > le corps du texte
Pourquoi dois-je utiliser le numéro d'entreprise et le numéro d'utilisateur pour interroger tous les départements et le nombre de personnes sous le département, et une seule donnée est renvoyée
La conception de la table de base de données est la suivante : la table utilisateur et la table d'entreprise ne font qu'un ? à un, et la table d'entreprise et la table de département sont un à plusieurs Oui,
Voici le SQL que j'ai écrit :
SELECT count(c.id) AS userCount,
b.company_id AS companyId,
b.`name` AS `name`
DE
company_branch b
REJOIGNEZ À GAUCHE company_personnel_file c ON c.branch_id = b.id
ET c.user_id =55
ET c.
1 = 1
b.id
为情所困2017-06-28 09:24:29
Comme vous n'avez pas expliqué les noms de table de la table d'entreprise et de la table du département, et qu'il n'y a qu'une seule table liée à l'entreprise ou au département dans le SQL, je ne peux que deviner qu'il s'agit de la table du département.
Sur la base de cette hypothèse, parlons de votre SQL. Votre SQL a les problèmes suivants :
Votre WHERE 1 = 1
n'est pas nécessaire
LEFT JOIN
里的ON
语句,是用来限定左联上来的这个表的数据的,而不是用来限定结果数据的,要限定结果数据的话得用WHERE
clause
Le SQL modifié est le suivant :
SELECT
COUNT(c.id) userCount,
b.company_id companyId,
b.name name
FROM
company_branch b
LEFT JOIN
company_personnel_file c ON c.branch_id = b.id
WHERE
c.user_id = 55 AND
c.STATUS = 1 AND
b.company_id = 10043
GROUP BY
b.id
LIMIT 0, 10;