やった
count(*)> 1を持つyによって、xxxグループからテーブルtmp select min(xxx_id)を作成します。
ここで、このtmpテーブルを別のテーブルと結合する必要がありますが、tmpテーブルの横にある唯一の列を参照するにはどうすればよいですか?
select * from table2 s、tmp t where s.xxx_id = t.xxx_id?
明らかに機能しません。t.xxx_idを何に置き換える必要がありますか?
やった
count(*)> 1を持つyによって、xxxグループからテーブルtmp select min(xxx_id)を作成します。
ここで、このtmpテーブルを別のテーブルと結合する必要がありますが、tmpテーブルの横にある唯一の列を参照するにはどうすればよいですか?
select * from table2 s、tmp t where s.xxx_id = t.xxx_id?
明らかに機能しません。t.xxx_idを何に置き換える必要がありますか?
その列を次のように引用符で囲む必要があります。
select * from table2 s, tmp t where s.xxx_id = t.`min(xxx_id)`;
ただし、混乱を招くことはないため、列にエイリアスを指定することをお勧めします。
create table tmp select min(xxx_id) AS min_xxx_id from xxx group by y having count(*)>1;
これを試して:
select *
from table2 s join tmp t
on s.xxx_id=t.xxx_id