0

次のクエリを実行する必要があります。

SELECT ID FROM tbl_a WHERE (fld_merchID, 'something') IN
(SELECT MerchID, MAX(Priority) FROM tbl_b WHERE Name LIKE 'AAA.com')

イメージできるように、tbl_a には「Priority」フィールドはありません。(優先度の値が高い MerchID を選択する必要があります)。

そのクエリは空を返していますが、そうすべきではありません。

どうすればいいのかわからない。

ありがとう!

4

2 に答える 2

0

これを試して 、

 SELECT ID FROM tbl_a WHERE fld_merchID IN
(SELECT MerchID, MAX(Priority) FROM tbl_b  WHERE Name LIKE 'AAA.com')
于 2013-01-09T20:56:12.353 に答える
0

優先度が最大のものが必要な場合は、サブクエリを大幅に変更して、優先度が最も高い MerchID を選択する必要があります。

SELECT ID FROM tbl_a WHERE fld_merchID IN (
  SELECT DISTINCT MerchID
  FROM tbl_b
  INNER JOIN (
    SELECT Name, MAX(Priority) as Priority
    FROM tbl_b 
    WHERE Name LIKE 'AAA.com'
    GROUP BY Name
  ) mx ON mx.Name = tbl_b.Name AND mx.Priority = tbl_b.Priority
)
于 2013-01-09T21:06:44.140 に答える