最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQL?Delete使用示例詳解

 更新時間:2025年01月24日 10:29:03   作者:F_D_Z  
文章主要介紹了如何使用SQL中的DELETE語句刪除表中滿足特定條件的行,包括刪除所有行和根據條件刪除部分行,討論了WHERE子句的使用方法,通過示例,展示了如何刪除所有重復的電子郵件,只保留一個具有最小id的唯一電子郵件,感興趣的朋友一起看看吧

語法

DELETE刪除表中所需內容

刪除表中滿足特點條件的行:DELETE FROM 表名 WHERE 條件;

刪除表中所有行:DELETE FROM 表名;

WHERE子句

  • WHERE子句用于指定從表中選取記錄的條件。
  • 允許篩選數據,只返回滿足特定條件的記錄。
  • WHERE子句可以包含各種條件,這些條件可以基于一個或多個列的值。
  • 可以使用邏輯運算符(如AND、OR、NOT)來組合多個條件。
  • 后文示例可供提供and和not的用法。

子查詢

子查詢(Sub Query)或稱為內查詢(Inner Query)、嵌套查詢(Nested Query),是SQL語言中一種常用的程序模塊,用于在一個查詢語句中嵌套另一個查詢語句。當一個查詢的結果是另一個查詢的條件時,這個查詢就被稱為子查詢。

子查詢必須括在圓括號中。子查詢SELECT子句通常只有一個列,除非主查詢中多個列與子查詢中的列進行比較。子查詢不能直接使用ORDER BY,但可以在子查詢中使用GROUP BY。返回多行數據的子查詢只能與多值操作符(如IN)一起使用。

需求

表: Person

+-------------+---------+
| Column Name | Type    |
+-------------+---------+
| id          | int     |
| email       | varchar |
+-------------+---------+
id 是該表的主鍵列(具有唯一值的列)。
該表的每一行包含一封電子郵件。電子郵件將不包含大寫字母。

編寫解決方案 刪除 所有重復的電子郵件,只保留一個具有最小 id 的唯一電子郵件。

運行腳本后,顯示的答案是 Person 表。驅動程序將首先編譯并運行代碼片段,然后再顯示 Person 表。Person 表的最終順序 無關緊要 。

示例

輸入:

Person 表:
+----+------------------+
| id | email            |
+----+------------------+
| 1  | john@example.com |
| 2  | bob@example.com  |
| 3  | john@example.com |
+----+------------------+
輸出: 
+----+------------------+
| id | email            |
+----+------------------+
| 1  | john@example.com |
| 2  | bob@example.com  |
+----+------------------+

分析

編寫解決方案 刪除 所有重復的電子郵件,只保留一個具有最小 id 的唯一電子郵件。

相當于刪除所有id較大且重復的電子郵箱

僅提供一個Person表,包含id和email

可以直接作笛卡爾積,比較id大小和電子郵箱,刪除所有id較大且相同的電子郵箱

通過where語句和and并列即可實現,where a.id>b.id and a.email=b.email

同樣的思路,也可以通過子查詢實現

通過子查詢查找id最小的電子郵箱,

select min(id) as id from Person group by email

再通過where not in 剔除其他信息

where id not in 
(
   select id from 
   (
       select min(id) as id 
       from Person 
       group by email
   ) u
)

代碼

delete a
from Person a, Person b
where a.id>b.id and a.email=b.email

OR

delete from Person
where id not in 
(
   select id from 
   (
       select min(id) as id 
       from Person 
       group by email
   ) a
)

到此這篇關于SQL Delete使用的文章就介紹到這了,更多相關SQL Delete使用內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

眉山市| 资中县| 顺义区| 郸城县| 长寿区| 安仁县| 新田县| 资兴市| 建宁县| 信丰县| 沈丘县| 介休市| 理塘县| 邵武市| 通海县| 罗田县| 辽阳市| 齐齐哈尔市| 宁德市| 奉贤区| 德安县| 和政县| 汝州市| 怀集县| 正蓝旗| 登封市| 昭觉县| 沁源县| 青海省| 洮南市| 航空| 卢氏县| 岳普湖县| 西充县| 行唐县| 威海市| 合江县| 阿图什市| 新巴尔虎左旗| 富蕴县| 平果县|