pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

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

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

問題描述

我有以下列的記錄: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 個數(shù)據(jù)庫表,每個表中有數(shù)千條記錄(當(dāng)然還有更多的列,我只提到了那些對解決方案有影響的列).記錄從PLC發(fā)送到數(shù)據(jù)庫,但有時(我們不知道為什么)PLC也會發(fā)送錯誤的記錄.

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 代碼應(yīng)該是什么樣的嗎?

Anybody who knows how the SQL code should look like?

推薦答案

請看下面我的 SQL.首先,我們使用兩個窗口函數(shù) (LEAD) 收集要刪除的 id,以獲取下一行所需的數(shù)據(jù).然后,計算所有需要的數(shù)據(jù)后,應(yīng)用 OP 提出的評估規(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中的記錄的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(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(從逗號或管道運(yùn)算符字符串中刪除重復(fù)項)
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)
主站蜘蛛池模板: 转子泵_凸轮泵_凸轮转子泵厂家-青岛罗德通用机械设备有限公司 | 西门子伺服电机维修,西门子电源模块维修,西门子驱动模块维修-上海渠利 | 楼梯定制_楼梯设计施工厂家_楼梯扶手安装制作-北京凌步楼梯 | 化妆品加工厂-化妆品加工-化妆品代加工-面膜加工-广东欧泉生化科技有限公司 | 硬齿面减速机_厂家-山东安吉富传动设备股份有限公司 | 氢氧化钾厂家直销批发-济南金昊化工有限公司 | 识禅_对禅的了解,从这里开始 | 北京森语科技有限公司-模型制作专家-展览展示-沙盘模型设计制作-多媒体模型软硬件开发-三维地理信息交互沙盘 | CCE素质教育博览会 | CCE素博会 | 教育展 | 美育展 | 科教展 | 素质教育展 | YJLV22铝芯铠装电缆-MYPTJ矿用高压橡套电缆-天津市电缆总厂 | 单锥双螺旋混合机_双螺旋锥形混合机-无锡新洋设备科技有限公司 | 金库门,金库房,金库门厂家,金库门价格-河北特旺柜业有限公司 | 直读光谱仪,光谱分析仪,手持式光谱仪,碳硫分析仪,创想仪器官网 | 解放卡车|出口|济南重汽|报价大全|山东三维商贸有限公司 | 空压机网_《压缩机》杂志| 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 | 影视模板素材_原创专业影视实拍视频素材-8k像素素材网 | 软文推广发布平台_新闻稿件自助发布_媒体邀约-澜媒宝 | 大_小鼠elisa试剂盒-植物_人Elisa试剂盒-PCR荧光定量试剂盒-上海一研生物科技有限公司 | 德国BOSCH电磁阀-德国HERION电磁阀-JOUCOMATIC电磁阀|乾拓百科 | 电子海图系统-电梯检验系统-智慧供热系统开发-商品房预售资金监管系统 | 缓蚀除垢剂_循环水阻垢剂_反渗透锅炉阻垢剂_有机硫化物-郑州威大水处理材料有限公司 | 培训一点通 - 合肥驾校 - 合肥新亚驾校 - 合肥八一驾校 | sfp光模块,高速万兆光模块工厂-性价比更高的光纤模块制造商-武汉恒泰通 | ?水马注水围挡_塑料注水围挡_防撞桶-常州瑞轩水马注水围挡有限公司 | 外贮压-柜式-悬挂式-七氟丙烷-灭火器-灭火系统-药剂-价格-厂家-IG541-混合气体-贮压-非贮压-超细干粉-自动-灭火装置-气体灭火设备-探火管灭火厂家-东莞汇建消防科技有限公司 | 订做不锈钢_不锈钢定做加工厂_不锈钢非标定制-重庆侨峰金属加工厂 | 吹田功率计-长创耐压测试仪-深圳市新朗普电子科技有限公司 | 防火门|抗爆门|超大门|医疗门|隔声门-上海加汇门业生产厂家 | 周口风机|周风风机|河南省周口通用风机厂 | 电子海图系统-电梯检验系统-智慧供热系统开发-商品房预售资金监管系统 | 平面钻,法兰钻,三维钻-山东兴田阳光智能装备股份有限公司 | 广东机电安装工程_中央空调工程_东莞装饰装修-广东粤标建设有限公司 | 高压管道冲洗清洗机_液压剪叉式升降机平台厂家-林君机电 | 翅片管换热器「型号全」_厂家-淄博鑫科环保 | 广东之窗网| 耐高温硅酸铝板-硅酸铝棉保温施工|亿欧建设工程 | 家用净水器代理批发加盟_净水机招商代理_全屋净水器定制品牌_【劳伦斯官网】 | 对辊式破碎机-对辊制砂机-双辊-双齿辊破碎机-巩义市裕顺机械制造有限公司 | 定量包装机,颗粒定量包装机,粉剂定量包装机,背封颗粒包装机,定量灌装机-上海铸衡电子科技有限公司 | 上海小程序开发-上海小程序制作公司-上海网站建设-公众号开发运营-软件外包公司-咏熠科技 |