選択SQLマージするためにどのように2つのSQLは、一つのテーブルは、2つの私がマージする
クエリ1から選択クエリ1方法で
SELECT ShoppingLike.WhichId
FROM ShoppingLike
WHERE (ShoppingLike.ShoppingScoreTypeId = 2) AND (ShoppingLike.UserId = 189)
代わりの75
クエリ2の結果を使用する必要がありますか?
選択SQLマージするためにどのように2つのSQLは、一つのテーブルは、2つの私がマージする
クエリ1から選択クエリ1方法で
SELECT ShoppingLike.WhichId
FROM ShoppingLike
WHERE (ShoppingLike.ShoppingScoreTypeId = 2) AND (ShoppingLike.UserId = 189)
代わりの75
クエリ2の結果を使用する必要がありますか?
おそらくサブ選択クエリですか?クエリは、単にこのように書くことができ、その場合
SELECT UserId
FROM ShoppingLike
WHERE WhichId IN (
SELECT WhichId
FROM ShoppingLike
WHERE (ShoppingScoreTypeId = 2) AND (UserId = 189)
)
これは常に結果としてUserId
189と行を生成するが、:
SELECT UserId
FROM ShoppingLike
WHERE (ShoppingScoreTypeId = 2) AND (UserId = 189)
これはShoppingScoreTypeId
と各レコードの行を返すことになります= 2の場合UserId
189.
ありがとう、それはうまく動作します:) – dan
SELECT UserId
FROM ShoppingLike
WHERE (ShoppingScoreTypeId = 2)
AND WhichId = (
SELECT top 1 ShoppingLike.WhichId
FROM ShoppingLike
WHERE (ShoppingLike.ShoppingScoreTypeId = 2) AND (ShoppingLike.UserId = 189)
)
なぜ "SELECTトップ1"、それはレコードの配列でなければならない1つのレコード – dan
ああ、あなたは2番目のクエリの結果と一致するように頼んだ。その場合は、 "トップ1"を削除して変更してください(...) –
サンプルデータと期待される結果を提供すれば、助けになるかもしれません... – sgeddes
@sgeddes私は彼が 'UNION'を望んでいると推測しています。 –
@TimBiegeleisen - 正直言って本当に確かではない、「組合」は理にかなっているかもしれませんが、「存在する」か「入」することもできます。この時点で誰が知っている... – sgeddes