0

Table_A.col1IDが一致し、値が最大であるTable_AからTable_Bの値をUPDATEしようとしています。

Table_Aとの 2 つの列B_idと考えてくださいcol1Table_B2 つの列がidあり、col1

UPDATE Table_A, Table_B
SET Table_B.col1 = Table_A.col1
WHERE  Table_B.id = Table_A.B_id
--WHERE Table_A.col1 is maximal

クエリの最後の行が正しくないことはわかっていますが、MAX()ここでの使用方法がわかりません。何かご意見は?

4

2 に答える 2

1
UPDATE Table_B AS b
  JOIN ( SELECT B_id, MAX(col1) AS max_col1
         FROM Table_A
         GROUP BY B_id
       ) AS a
    ON b.id = a.B_id
SET b.col1 = a.max_col1 ;
于 2013-11-14T19:57:57.313 に答える
0
AND TableB.col1 = (select MAX(col1) from TableB)

(WHERE ではなく AND に注意してください)

于 2013-11-14T19:30:44.400 に答える