0

同じクエリで取得する必要があるユーザー テーブルの名前とともに、emp_mtg='141' の empmtg テーブルから emp_id をクエリする必要があります。

SELECT emp.emp_id,mast.name
FROM empmtg emp,users mast
WHERE emp.emp_mtg='141'; 

これは、empmtg テーブルの mtg id が 141 であるという条件で、empmtg テーブルから empid を選択し、users テーブルから名前を選択する必要があります。そのテーブルには、mtg id が 141 のレコードが 5 つしかありません。しかし、約 1000 のデータを取得しています。

また、これを試しましたが、3つのレコードしか出力されません

SELECT emp.emp_id,mast.name
FROM empmtg emp,users mast
WHERE emp.emp_mtg='141' and emp.emp_id=mast.id

それから私は参加に行きました

SELECT emp.emp_id,mast.name
FROM empmtg emp
LEFT JOIN users mast
ON emp.emp_id=mast.id
WHERE emp.emp_mtg='141'; 

これは 5 つのレコードの出力を生成していますが、名前はすべて null です。名前がnullでないことをユーザーテーブルでチェックインしました

select 内に 1 つの回答 select がありますが、これは正しい方法ではないと思います。しかし、私はそのようにクエリするのは好きではありません。しかし、それは期待どおりの結果をもたらしました。

より良い解決策のために誰かが私を助けてくれますか?

4

1 に答える 1

2
 SELECT emp.emp_id,mast.name
 FROM  empmtg emp
 left JOIN  users mast
 ON emp.emp_id=mast.id
 WHERE emp.emp_mtg = 141;

ここで動作するデモ

于 2013-08-18T10:52:15.690 に答える