このクエリでエラーが発生しました:
SELECT i.name, i.surname, (SELECT u.username FROM user u WHERE u.info_id IN (1,9,10,15,25,40,42,43,44)) as email FROM `userinfo` i WHERE i.id IN (1,9,10,15,25,40,42,43,44)
エラー:
カーディナリティ違反: 1242 サブクエリが複数の行を返す
これは JOIN ステートメントを使用して解決できることは知っていますが、それを解決する方法がわかりません。
私の質問をより明確にするために、user と userinfo の 2 つのテーブルがあります。
ユーザー
id info_id username
ユーザー情報
id name surname
からの info_id 行user
は の ID に関連しているため、この形式 (1,4,7,8,9) のユーザー情報 ID のリストを持っているので、info_id と一致するuserinfo
名前と姓 (からuserinfo
) とユーザー名が必要ですuser