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

根據(jù)下一條記錄刪除SQL中的記錄

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

問題描述

我有以下列的記錄:IDTime_EndAttribute.

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

我需要?jiǎng)h除所有記錄,

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

但僅限:

  • 如果下一行沒有相同的屬性編號(hào)

  • 下一行具有相同的屬性編號(hào)和 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 個(gè)數(shù)據(jù)庫表,每個(gè)表中有數(shù)千條記錄(當(dāng)然還有更多的列,我只提到了那些對(duì)解決方案有影響的列).記錄從PLC發(fā)送到數(shù)據(jù)庫,但有時(shí)(我們不知道為什么)PLC也會(huì)發(fā)送錯(cuò)誤的記錄.

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.

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

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

有人知道 SQL 代碼應(yīng)該是什么樣的嗎?

Anybody who knows how the SQL code should look like?

推薦答案

請(qǐng)看下面我的 SQL.首先,我們使用兩個(gè)窗口函數(shù) (LEAD) 收集要?jiǎng)h除的 id,以獲取下一行所需的數(shù)據(jù).然后,計(jì)算所有需要的數(shù)據(jù)后,應(yīng)用 OP 提出的評(píng)估規(guī)則.最后,使用獲取到的 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)
                           )

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

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

相關(guān)文檔推薦

Modify Existing decimal places info(修改現(xiàn)有小數(shù)位信息)
The correlation name #39;CONVERT#39; is specified multiple times(多次指定相關(guān)名稱“CONVERT)
T-SQL left join not returning null columns(T-SQL 左連接不返回空列)
remove duplicates from comma or pipeline operator string(從逗號(hào)或管道運(yùn)算符字符串中刪除重復(fù)項(xiàng))
Change an iterative query to a relational set-based query(將迭代查詢更改為基于關(guān)系集的查詢)
concatenate a zero onto sql server select value shows 4 digits still and not 5(將零連接到 sql server 選擇值仍然顯示 4 位而不是 5)
主站蜘蛛池模板: 欧美在线成人影院 | 国产乱码精品一区二区三区中文 | 视频一区在线 | 国产视频一区二区三区四区五区 | 日本精品视频 | 久久亚洲视频网 | 黄网在线观看 | 91高清视频在线 | 精品国产乱码一区二区三 | 欧洲高清转码区一二区 | 精品乱人伦一区二区三区 | 欧美一区二区视频 | 国产精品福利在线 | 精品av| 黑人精品欧美一区二区蜜桃 | 久草免费在线视频 | 国产成人午夜电影网 | 欧美成视频 | 中文字幕在线免费视频 | 做a网站 | 久久神马| 日本午夜精品一区二区三区 | 在线一区视频 | 国产乱码精品一品二品 | 国产精品久久 | 欧美一区二区三区视频在线 | 国产精品久久国产精品 | 国产一区二区在线免费观看 | 九色在线视频 | 狠狠色狠狠色综合日日92 | 久久精品一区二区视频 | 日本久久精品视频 | 九九久久免费视频 | 2018中文字幕第一页 | 国产精品久久 | 一级毛片免费 | 亚洲精品国产成人 | 欧美日韩一区二区在线播放 | 性高湖久久久久久久久3小时 | 国产精品69毛片高清亚洲 | 欧美日韩综合精品 |