すべての部門とその部門の下にある従業員の数を照会するのにエンタープライズ番号とユーザー番号を使用するのはなぜですか? 返されるデータは 1 つだけです。
データベース テーブルの設計は次のとおりです: ユーザー テーブルとエンタープライズテーブルは 1 対 1、エンタープライズ テーブルと部門テーブルは 1 対多です。
以下は私が書いた SQL です。
LEFT JOIN company_personnel_file c ON c.branch_id = b.id
AND c.user_id =55AND c.STATUS = 1
WHERE
リーリー
AND b.company_id =10043
リーリー
リミット0,
エンタープライズテーブルと部門テーブルのテーブル名の説明がなく、SQL内にエンタープライズまたは部門に関連するテーブルが1つしかないため、部門テーブルであると推測することしかできません。
この仮定に基づいて、SQL について話しましょう。 SQL には次の問題があります:
あなたの
WHERE 1 = 1
は必要ありませんLEFT JOIN
里的ON
语句,是用来限定左联上来的这个表的数据的,而不是用来限定结果数据的,要限定结果数据的话得用WHERE
条項変更されたSQLは次のとおりです:
リーリー