1樓:
delete from tblexam where examid in --從表裡刪除資料,examid存在於下面的列表
(select examid from
(select examno,examid,examsubject,examtype,
--對這個表進行編號,先通過examno, examsubject分組,然後根據examno排序後編號,新生成的編號列名指定為rn
row_number() over(partition by examno, examsubject order by examno) as rn
from tblexam
) as a where rn > 1 --這裡的條件是編號列大於1的
) 裡面的子查詢舉個例子
表 tblexam
examno examsubject
1 a
4 a
2 a
2 a
3 b
3 b
通過examno examsubject分組,然後加上序號列後結果成
examno examsubject rn
1 a 1
4 a 1
2 a 1
2 a 2
3 b 1
3 b 2
where rn > 1 就把rn=2的兩條選擇出來了
2樓:匿名使用者
--刪除examid在子查詢中的
delete from tblexam where examid in (
select examid from
(--過濾出rn>1的記錄
select examno,examid,examsubject,examtype,
--row_number() over(partition by examno, examsubject order by examno)
--rn為按照examno, examsubject分組,按照examno排序的序號
row_number() over(partition by examno, examsubject order by examno) as rn from tblexam
) as a where rn > 1)
3樓:匿名使用者
在刪除中巢狀子查詢,從裡向外分析,這樣就能很好的理解了。
sql語句 包含怎麼寫,SQL語句 包含怎麼寫
使用sql 萬用字元可以替代一個或多個字元,即模糊查詢,也就是包含關係。sql 萬用字元必須與 like 運算子一起使用。在 sql 中,可使用以下萬用字元如下 1 替代一個或多個字元 2 僅替代一個字元 3 charlist 字元列中的任何單一字元 4 charlist 或者 charlist 不...
這個sql語句怎麼寫?怎麼寫sql的語句?
select id,userid,platform,time,reward serven,reward thirty from kids activity order by reward thirty desc不知道你是不是這個意思。按,reward thirty排序。select count t2...
求sql語句,求!!!SQL語句!
隨緣寫法你看是你要的不,實際上要是已經是1和0了 直接sum也行select a1,sum a2 sum a3 from a group by a1 既然已經是1和0了,那麼直接sum就可以了 select place,sum tdbz sum xdbz from table group by pl...