Mysql

限制結果後的 where 子句

  • November 6, 2018

我有一個關於在限制行後獲得結果的問題。

我對 MySQL 沒有太多經驗,但我試圖從數據庫中獲取結果,在限制結果後我需要執行 where 子句。

SELECT
 COUNT(measurement) as 'measurement errors'
FROM measurelog
WHERE (measurement < (baseline - tolerance))
ORDER BY Id DESC
LIMIT 100

我只需要最後 100 行的測量值,所以我希望得到大約 5~10 個結果,但現在程序計數,直到找到 100 個錯誤測量。

我試圖將 where 子句切換到底部,但隨後我從 MySQL 客戶端收到語法錯誤。

有什麼我想念的嗎?還有另一種方法可以做到這一點嗎?

謝謝 Akina 的提示,使用以下查詢讓它工作

SELECT 
     COUNT(measurement) as 'Measurement Errors'
    FROM ( 
       SELECT *
       FROM measurelog
       ORDER BY Id DESC
       LIMIT 100
       ) sub
   WHERE (measurement < (baseline - tolerance))

現在返回 7 個結果

引用自:https://dba.stackexchange.com/questions/221896