[英]MYSQL calculate current year 1st month, 2nd month etc from old dates
[英]MySQL-Get latest data of 1st 4 days of current month
我的數據庫中有一個表,該表存儲每月1號的meters
能量值。 如果儀表離線,它將存儲第二天的值。
下面是我的情況
我有2 February
和March
過去兩個月的水表記錄。 February
數據為2019-02-01 00:00:00
但March
為4行。 見下圖
在上圖中1st,2nd and 3rd
月1st,2nd and 3rd
日的FA
值為空1st,2nd and 3rd
月4日的FA
值為零。
我做了什么?
我可以選擇具有FA
值的行。
我想做的事?
March
因此它應該僅獲得March
記錄,然后下個月應該僅獲得April
記錄,依此類推。 這是我的DB小提琴
任何幫助將不勝感激。
解決此問題的一種方法是FOR我想只獲取當前月份的數據,即當前月份為3月,因此它應該僅獲取3月記錄,然后下個月應該僅獲取4月記錄,依此類推。
means month(TV)= month(now())
查詢不得超過天數限制,即不超過4天,即僅應檢查每個月的前四天的記錄。 means day(TV)<= 4
最后是你的查詢
select * from `biz_pub_data_f_energy_m` a
where a.`DATA_ID` = '1b9716122dd5408691a063227316ac0a'
and a.`FA` is NOT NULL and month(TV)= month(now())
and day(TV)<= 4
您可以在下面嘗試-
select * from `biz_pub_data_f_energy_m` a
where a.`DATA_ID` = '1b9716122dd5408691a063227316ac0a'
and a.`FA` is NOT NULL and tv>=date(DATE_SUB(now(),INTERVAL DAYOFMONTH(now())-1 DAY))
and tv<=DATE_ADD(date(DATE_SUB(now(),INTERVAL DAYOFMONTH(now())-1 DAY)), INTERVAL 4 DAY)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.