當前位置:首頁 » 編程語言 » sql刪除條件

sql刪除條件

發布時間: 2022-08-05 21:01:43

❶ 有條件刪除sql數據的部分內容

假設表的主鍵為id
DELETE
a
WHERE
(id
IN
(SELECT
m.id
FROM
a
AS
m
INNER
JOIN
a
AS
n
ON
SUBSTRING(m.電話號碼,
1,
4)
=
SUBSTRING(n.電話號碼,
1,
4)
AND
m.id
<>
n.id
WHERE
(DATALENGTH(m.電話號碼)
<
13)
AND
(DATALENGTH(n.電話號碼)
>
12)))
----------------------------------------------------------------
m,n是表的兩個別名
刪除滿足以下4個條件的m表中的記錄,
1,m
n兩表主鍵id不相等,指代同一表中的不同記錄。
2,SUBSTRING(m.電話號碼,
1,
4)
=
SUBSTRING(n.電話號碼,
1,
4)
,兩條記錄的電話號碼的前4位相等,即區號一致。
3,n表的那條記錄的電話號碼欄位長度必須大於12,即4位區號+1位空格+8位電話號碼=13
4,m表的那條記錄的電話號碼欄位長度必須小於13,即4位區號+1位空格+7位電話號碼=12
改成
DELETE
a
WHERE
(id
IN
(SELECT
m.id
FROM
a
AS
m
,a
AS
n
where
SUBSTRING(m.電話號碼,
1,
4)
=
SUBSTRING(n.電話號碼,
1,
4)
AND
m.id
<>
n.id
and
(DATALENGTH(m.電話號碼)
=
12)
AND
(DATALENGTH(n.電話號碼)
=
13)))
好理解點
------------------------------------------------------------
沒空格的話,只要把(DATALENGTH(m.電話號碼)
=
12)
AND
(DATALENGTH(n.電話號碼)
=
13)))
改成(DATALENGTH(m.電話號碼)
=
11)
AND
(DATALENGTH(n.電話號碼)
=
12)))就可以了。
不止一種區號沒關系,只要區號長度為4就行了。
-----------------------------------------------------------
我這的確是兩表對比,但這兩張都是同一張表,不影響什麼。
你怕刪錯的話,可以先
select
*
from
a
WHERE
(id
IN
(SELECT
m.id
FROM
a
AS
m
,a
AS
n
where
SUBSTRING(m.電話號碼,
1,
4)
=
SUBSTRING(n.電話號碼,
1,
4)
AND
m.id
<>
n.id
and
(DATALENGTH(m.電話號碼)
=
12)
AND
(DATALENGTH(n.電話號碼)
=
13)))
看一下要刪的東西對不對么。
一種區號下的7位號碼?
你的這種區號是怎麼確定的?是根據該區號即有7位號碼也有8位號碼?還是這個區號由外部輸入指定啊?前者的話,我前面的sql文能實現,但未必是一種,比如說有數據
01237654321
012387654321
04567654321
045687654321
07897654321
的時候,就只會刪除第一第三兩條。
-----------------------------------------------------------------------
你把這個放進去,看看是不是你要刪除的東西。
select
*
from
a
WHERE
(id
IN
(SELECT
m.id
FROM
a
AS
m
,a
AS
n
where
SUBSTRING(m.電話號碼,
1,
4)
=
SUBSTRING(n.電話號碼,
1,
4)
AND
m.id
<>
n.id
and
(DATALENGTH(m.電話號碼)
=
11)
AND
(DATALENGTH(n.電話號碼)
=
12)))
如果是,就用以下代碼刪除
DELETE
a
WHERE
(id
IN
(SELECT
m.id
FROM
a
AS
m
,a
AS
n
where
SUBSTRING(m.電話號碼,
1,
4)
=
SUBSTRING(n.電話號碼,
1,
4)
AND
m.id
<>
n.id
and
(DATALENGTH(m.電話號碼)
=
11)
AND
(DATALENGTH(n.電話號碼)
=
12)))
另外,如果你只是單純的要把所有4位區號+7位數字的記錄全部刪掉的話,只要用以下代碼就可以了。
delete
a
where
DATALENGTH(電話號碼)
=
11
前提是,你正確的數據裡面不存在4位區號+7位數字,如果有,就只能用我上面說的方法了

❷ SQL刪除語句(有條件的)

delete from URTAB where id not in (select parentid from URTAB)

這樣會把所有末梢部門全部宰了,這里末梢部門指所有沒有子部門的單位——
不管它有沒有父部門

如果需要保留沒有父部門的,加上一個條件

delete from URTAB where parentid not null and id no in (select parentid from URTAB)

❸ 刪除資料庫的sql語句如何寫

1、drop database:資料庫名--刪除資料庫的。


2、drop table:表名--刪除表的。


3、delete from:表名--where條件--刪除數據的。


4、truncate table:表名--也是刪除資料庫的。

拓展資料

1、SQL即結構化查詢語言(Structured Query Language),是一種特殊目的的編程語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統;同時也是資料庫腳本文件的擴展名。

2、SQL語句無論是種類還是數量都是繁多的,很多語句也是經常要用到的,SQL查詢語句就是一個典型的例子,無論是高級查詢還是低級查詢,SQL查詢語句的需求是最頻繁的。

❹ SQL語句按條件刪除數據

前提是secend中的username是主鍵 first中是username是外鍵語句如下
delete from second where username in (select username from first where to_number(to_char(time,'yyyymmdd')) < 20120203) cascade;
ps:否則還需要重新刪除first中的行如下
delete from first where to_number(to_char(time,'yyyymmdd')) < 20120203;

❺ SQL刪除語句多條件刪除怎麼寫

用and,條件是並列的,就是說and前後的條件同時滿足才能刪除
delete from 銷售 where 單號 =『1001』 and 條碼='3002'
祝好運,望採納。

❻ 怎樣用SQL語句刪除約束條件

刪除約束的語法如下:

Alter Table 表名
Drop Constraint 約束名
附加:在創建表的時候同時添加約束的寫法:

use stuDB
go
if exists(select * from Sysobjects where name = 'stuInfo')
drop table stuInfo
go
create table stuInfo
(
stuName varchar(20) not null primary key(stuName)
,stuID int not null unique(stuID)
,stuAddress varchar(20) not null default('地址不詳')
,stuAge int not null check(stuAge between 15 and 40)
)

❼ 求SQL語句:按條件刪除數據

delete from secend t where t.username in (select username from first where time like '20120203%');
delete from first where time like '20120203%';
commit;

記得要先刪secend表,再刪first表。

表的數據量不會很大吧?那就直接執行就可以了。

另外如果time數據類型是date的,那就把time like '20120203%' 改成
time >=to_date('20120203','yyyymmdd') and time <to_date('20120204','yyyymmdd')

❽ sql刪除語句怎麼寫

delete from table_name 刪除全表數據
delete from table_name where 條件 ,根據條件刪除數據

熱點內容
歐文5的配置是什麼 發布:2025-01-22 21:30:23 瀏覽:108
日誌存儲資料庫 發布:2025-01-22 21:30:07 瀏覽:474
gulp上傳cdn 發布:2025-01-22 21:27:34 瀏覽:203
emule文件夾 發布:2025-01-22 21:23:23 瀏覽:981
s7e什麼時候推送安卓7 發布:2025-01-22 21:20:59 瀏覽:203
狐狸的清白腳本分析 發布:2025-01-22 21:19:59 瀏覽:182
如何破解仿射密碼 發布:2025-01-22 21:13:53 瀏覽:81
百度視頻存儲 發布:2025-01-22 21:13:11 瀏覽:168
發吧傳媒源碼 發布:2025-01-22 21:07:52 瀏覽:953
shell腳本調用sql腳本 發布:2025-01-22 20:53:51 瀏覽:428