0

したがって、2 つのテーブルを 1 つの where 条件で結合したいと思います。

これが私がこれまでに試したことです:

SELECT * FROM (ci_usertags) 
JOIN ci_tags ON ci_usertags.utag_tid
WHERE utag_uid = 1

私のテーブルは次のようになります。

ci_usertags 
  utag_id 
  utag_uid
  utag_tid

ci_tags 
  tag_id
  tag_name

tag1のユーザーのすべての を選択してID、 を取得したいtag name。このSQLを使用すると、重複した結果が得られ、 1tagsのユーザー向けではない結果も得られますID

4

3 に答える 3

2

結合の代わりにネストされたクエリを使用するソリューション (速度の向上)

Select tag_id, tag_name
FROM ci_tags
WHERE tag_id IN (Select utag_tid FROM ci_usertags WHERE utag_id = 1 GROUP BY 1)
GROUP BY 1,2
于 2013-08-11T16:26:25.673 に答える