1
這是我的數據庫。使用MAX()和GROUP BY不返回正確的結果
id - date_time - barcode_no - result
1 - '2017-08-01 01:00:00' - 'A' - '1'
2 - '2017-08-01 02:00:00' - 'A' - '2'
31 - '2017-08-01 03:00:00' - 'A' - '3'
4 - '2017-08-01 04:00:00' - 'B' - '4'
5 - '2017-08-01 05:00:00' - 'B' - '5'
61 - '2017-08-01 06:00:00' - 'B' - '6'
7 - '2017-08-01 07:00:00' - 'C' - '7'
8 - '2017-08-01 08:00:00' - 'C' - '8'
9 - '2017-08-01 09:00:00' - 'C' - '9'
100- '2017-08-01 10:00:00' - 'C' - '10'
我對MySQL的
SELECT barcode_no,MAX(date_time),result
FROM test_data_main
GROUP BY barcode_no
此查詢,但它並沒有給我正確的結果。我也使用any_value(結果),但我得到相同的錯誤結果。
這是我的示例數據庫和SQL小提琴上的代碼的鏈接。 SAMPLE CODE
我的要求是獲取最新的barcode_no行。
id - date_time - barcode_no - result
31 - '2017-08-01 03:00:00' - 'A' - '3'
61 - '2017-08-01 06:00:00' - 'B' - '6'
100- '2017-08-01 10:00:00' - 'C' - '10'
,但我錯了結果
id - date_time - barcode_no - result
31 - '2017-08-01 03:00:00' - 'A' - '1'
61 - '2017-08-01 06:00:00' - 'B' - '4'
100- '2017-08-01 10:00:00' - 'C' - '7'
我不知道什麼是錯我的查詢。請指教。
在此先感謝。
*「我的要求是,以獲取最新barcode_no的行。」 * - 使用'集團BY'你不能從表中的行。 「GROUP BY」使用表中的數據計算新行。在[類似問題](https://stackoverflow.com/q/12102200/4265352)上查看[此答案](https://stackoverflow.com/a/28090544/4265352)。 – axiac
謝謝你axiac和Sagar Gangwal。似乎是類似的axiac。爲了不好,搜索時沒有顯示。 – Roggie