久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

根據下一條記錄刪除SQL中的記錄

Deleting record in SQL depending on next record(根據下一條記錄刪除SQL中的記錄)
本文介紹了根據下一條記錄刪除SQL中的記錄的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我有以下列的記錄:IDTime_EndAttribute.

I have records with columns: ID, Time_End and Attribute.

我需要刪除所有記錄,

WHERE Time_End = '1990-01-01 00:00:00.000' AND Attribute <> '9'

但僅限:

  • 如果下一行沒有相同的屬性編號

  • 下一行具有相同的屬性編號和 Time_End1990-01-01 00:00:00.000

例如:

ID     Time_End                     Attribute
---------------------------------------------
235    1990-01-01 00:00:00.000      5                  /delete
236    1990-01-01 00:00:00.000      5                  /delete
237    1990-01-01 00:00:00.000      5
238    2016-10-10 23:45:40.000      5


ID     Time_End                     Attribute
---------------------------------------------
312    1990-01-01 00:00:00.000      8                  /delete
313    2016-01-09 18:00:00.000      6                  
314    1990-01-01 00:00:00.000      4                  /delete
315    1990-01-01 00:00:00.000      7
316    2016-10-10 23:45:40.000      7

我們的客戶有 50 個數據庫表,每個表中有數千條記錄(當然還有更多的列,我只提到了那些對解決方案有影響的列).記錄從PLC發送到數據庫,但有時(我們不知道為什么)PLC也會發送錯誤的記錄.

Our customer have 50 database tables with thousands of records in every table (and of course more columns, I mentioned only those, which have impact on solution). Records are send in to the database from PLC, but sometimes (we don't know why) PLC send also wrong records.

所以我需要一個查詢來查找那些錯誤的記錄并刪除它們.:)

So what I need is a query which finds those wrong records and deletes them. :)

有人知道 SQL 代碼應該是什么樣的嗎?

Anybody who knows how the SQL code should look like?

推薦答案

請看下面我的 SQL.首先,我們使用兩個窗口函數 (LEAD) 收集要刪除的 id,以獲取下一行所需的數據.然后,計算所有需要的數據后,應用 OP 提出的評估規則.最后,使用獲取到的 id 通過帶有 in 子句的 id 刪除 tablet 受影響的記錄.

Please see my SQL below. First, we collect ids to delete using two window functions (LEAD) to get the next row needed data. Then, with all needed data computed, apply the evaluation rules proposed by the OP. Last, use the obtained ids to delete the affected records of the tablet by id with an in clause.

 DELETE toDeleteTable 
 WHERE toDeleteTable.id IN (WITH dataSet
                              AS (SELECT toDeleteTable.id,
                                         toDeleteTable.time_end, 
                                         toDeleteTable.attribute, 
                                         LEAD(toDeleteTable.time_end,1,0)  OVER (ORDER BY toDeleteTable.id) AS next_time_end,
                                         LEAD(toDeleteTable.attribute,1,0) OVER (ORDER BY toDeleteTable.id) AS next_attribute
                                    FROM toDeleteTable)
                            SELECT dataSet.id
                              FROM dataSet
                             WHERE dataSet.time_end = '1990-01-01 00:00:00.000' 
                               AND dataSet.attribute <> '9' 
                               AND (  (dataSet.next_attribute = dataSet.attribute AND dataSet.next_time_end  = '1990-01-01 00:00:00.000')   
                                    OR dataSet.next_attribute <> dataSet.attribute)
                           )

這篇關于根據下一條記錄刪除SQL中的記錄的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Modify Existing decimal places info(修改現有小數位信息)
The correlation name #39;CONVERT#39; is specified multiple times(多次指定相關名稱“CONVERT)
T-SQL left join not returning null columns(T-SQL 左連接不返回空列)
remove duplicates from comma or pipeline operator string(從逗號或管道運算符字符串中刪除重復項)
Change an iterative query to a relational set-based query(將迭代查詢更改為基于關系集的查詢)
concatenate a zero onto sql server select value shows 4 digits still and not 5(將零連接到 sql server 選擇值仍然顯示 4 位而不是 5)
主站蜘蛛池模板: 欧美激情精品久久久久久 | 日本午夜免费福利视频 | www.中文字幕 | 欧美中文在线 | 国产精品免费一区二区三区 | 国产精品99久久久久久大便 | 国产精品亚洲第一区在线暖暖韩国 | 色综合久久久 | 99pao成人国产永久免费视频 | 狠狠干网站 | 国产欧美精品区一区二区三区 | 亚洲高清视频在线观看 | 亚洲天堂中文字幕 | 97超碰成人 | 999久久久久久久久6666 | 精品一区二区三区视频在线观看 | 性一交一乱一伦视频免费观看 | 人妖videosex高潮另类 | 国产精品久久久久久久久久久久冷 | 欧美视频精品 | 一区二区日韩 | 99视频免费看 | 秋霞精品| 99成人精品 | 日韩一级黄色毛片 | 欧美精品在线一区 | 一区二区三区av夏目彩春 | 精品久久久久久国产 | www.日日夜夜| 久久久久1 | 亚洲精品乱码久久久久久9色 | 国产精品一区久久久 | 久久大香| 日韩中文一区二区三区 | av毛片免费 | 午夜视频网站 | 久久精品91久久久久久再现 | 成人在线视频观看 | 精品欧美一区二区三区久久久 | 国产精品一级在线观看 | 黄色三级毛片 |