mysql查詢最近時間的一組資料

PasserBy_L發表於2018-12-21

資料庫15萬資料測試

第一種寫法   :資料庫用時1.22秒

SELECT
  a.*,b.*
FROM
    (
        SELECT
            *
        FROM
           表名
        WHERE
            simnumber IN (******, ******)
        ORDER BY
           時間欄位 DESC
    ) a
LEFT JOIN 另一個表名 t ON a.simnumber = t.simnumber
GROUP BY
    SimNumber

第二種寫法:資料庫用時0.68秒

SELECT
    l.*
FROM
    表名 l
LEFT JOIN 另一個表名 t ON l.SimNumber = t.SimNumber
WHERE
    時間欄位 IN (
        SELECT
            MAX(時間欄位) AS lo
        FROM
            表名
        WHERE
            SimNumber IN (*****,*****)
        GROUP BY
            SimNumber
    )
ORDER BY
    FIELD(l.SimNumber, *****,*****)

 

相關文章