行列轉換查詢 分頁 條件搜尋 時間間斷值

2021-08-18 17:23:07 字數 962 閱讀 5619

公司需要完成乙個歷史記錄的查詢功能 

表結構如下:

需求:需要將time進行行列轉換 並且將需要的point的data值取出並單獨成列 

查詢條件: 1.pointid(對應需要查詢的point)

2.以使用者輸入開始時間begin為起點,以使用者輸入結束end時間為終點,並且以使用者輸入的間隔時間interval為隔斷

3.完成分頁

資料庫:sqlserver2008

查詢效果:

max(case a.pointid when 13 then a.data else -3000 end) '探頭1',

max(case a.pointid when 14 then a.data else -3000 end) '探頭2',

max(a.isalarm) 'isalarm'

from (

select [time],pointid,data,isalarm from history_data_10 where time between '2018-01-10 00:00:00' and '2018-05-01 23:59:59' and pointid in (13,14) and datediff(minute, '2018-01-10 00:00:00', time)%1 = 0

) a group by a.time

) b where b.rn > 0; 

分頁,搜尋後保留搜尋條件分頁

先寫乙個簡單的分頁,供初學者參考 header content type text html charset utf8 建立乙個資料來源,若資料來自於mysql 此處請改為mysql獲取資料 注意limit使用 limit offset,length offset 為偏移量,從第幾個開始 下標從0開...

多條件查詢分頁

分頁實現後,通過多條件查詢後,內容如果需要分頁,容易出現切換頁面內容跳轉到查詢前的內容。解決方法可以通過將查詢後的內容建表,然後在進行分頁。require once wenjian dbda.class.php require once wenjian page.class.php obj sele...

條件查詢 根據行 列兩個條件查詢值

原始資料如圖1,要查詢行與列同時符合條件的數值,如圖2的i列。圖 1 圖 2方法一 index和match雙劍合璧 要想知道某個資料是一列或一行資料中的第幾個,可以用match函式,它可以輕鬆確定某個資料在其所屬行與列中的位置,語法結構如下 第三引數為0時,查詢查詢值首次出現的位置。index函式是...