mysql 中關於怎么寫 row_number()over(order by) 類似的功能支持


官網說明類似的支持:http://www.mysqltutorial.org/mysql-row_number/
根據說明排序   再根據條件判斷是否一致   來決定是否新增 1

SELECT b.* FROM ( SELECT (@row_number := CASE WHEN @region_id = region_id AND @oil_id = oil_id THEN @row_number + 1 ELSE 1 END ) AS rn, id, oil_date, (@region_id := region_id) AS region_id, (@oil_id := oil_id) AS oil_id , last_update_time FROM `bwoil_prod_oil_price` s, (SELECT @row_number:=0) AS t WHERE audit_status=1 AND STATUS =0 ORDER BY region_id,oil_id ,oil_date DESC,last_update_time DESC ) a INNER JOIN `bwoil_prod_oil_price` b ON a.id = b.id WHERE a.rn = 1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM