さて、私はstackoverflow全体を見ようとしましたが、私が見つけた最も近い解決策はこれです: 同じ列にmysql AND句を複数回
しかし、ステートメントを使用することはできず、group by のために「having」構文は機能しません。これには簡単な解決策が必要です。
2 つのテーブルは次のようになります (簡略化)。
ユーザー:
uid name
1 person 1
2 person 2
3 person 3
カテゴリ:
uid value
1 actor
1 musician
2 actor
3 dancer
4 musician
4 dancer
同時に2つの値であるもののuidを取得したい。たとえば、俳優とミュージシャンの UID を取得したいとします。1 つの値だけでなく、両方が必要です。
最初にこれを試しました:
SELECT users.uid, users.name
FROM
users
LEFT OUTER JOIN categories ON users.uid = categories.uid
WHERE (categories.value = 'actor' AND categories.value = 'musician')
GROUP BY u.uid;
1 つの行に 2 つの値を含めることはできないため、これはもちろん機能しません。
誰かが解決策を知っていますか?