私は以下のようなSQLテーブルを持っています。そして、tag_idが複数の項目と一致する一意の結果を戻したいと思います。 だからtag_id = 106 and 73
を持つimage_id
のそれぞれを見つけたい場合は、image_id 12345714 and 12345712
を戻したいと思います。SQLクエリ複数のタグから一意のイメージを選択
私は
SELECT *
FROM tag_relationship
WHERE tag_id
IN (106, 73)
をやってみました。しかし、これは
id image_id tag_id
61 12345706 73
70 12345712 73
72 12345712 106
76 12345714 73
77 12345714 106
に戻します私もGROUP BY
を試しましたが、それはかなり右ではないようです。
フルテーブルのサンプル: image_id
は異なる行で同じ番号を持つことができますが、異なるtag_id
を持ちます。
id image_id tag_id
1 12345679 63
2 12345679 83
3 12345680 74
4 12345680 108
5 12345680 75
6 12345683 103
7 12345682 87
8 12345682 105
9 12345682 74
10 12345682 81
11 12345683 79
12 12345683 109
13 12345689 111
14 12345689 69
15 12345690 104
16 12345687 110
17 12345687 69
18 12345687 91
19 12345687 93
20 12345687 63
21 12345692 69
22 12345692 104
23 12345692 80
24 12345692 76
25 12345693 74
26 12345693 99
27 12345693 96
28 12345693 94
29 12345691 63
30 12345691 69
31 12345697 92
32 12345697 76
33 12345698 74
34 12345699 97
35 12345698 94
36 12345699 98
37 12345698 81
38 12345699 105
39 12345697 91
40 12345694 100
41 12345694 101
42 12345694 94
43 12345694 74
44 12345696 78
45 12345696 95
46 12345696 112
47 12345701 113
48 12345701 114
49 12345700 94
50 12345700 91
51 12345700 90
52 12345702 87
53 12345702 115
54 12345702 80
55 12345702 74
56 12345704 78
57 12345705 83
58 12345705 84
59 12345704 63
60 12345705 104
61 12345706 73
62 12345706 64
63 12345706 86
64 12345706 88
65 12345706 89
66 12345713 80
67 12345713 115
68 12345713 81
69 12345717 63
70 12345712 73
71 12345717 64
72 12345712 106
73 12345717 79
74 12345712 74
75 12345709 76
76 12345714 73
77 12345714 106
78 12345715 68
79 12345716 116
80 12345715 69
81 12345716 71
を試してみてください、あなたを指定する必要がありますデータベース?私はMSSQL、MySQL PostgreSQLまたは何か他のものを意味します。 –
申し訳ありませんが、他の人のためにこの投稿を参照してください他の人のためのmysql – user9418