當前位置:首頁 » 編程語言 » sql中同一表的比較
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql中同一表的比較

發布時間: 2022-12-31 04:33:19

sql 同一表內同一列的前後值對比

我的解決方法必須有一個欄位,該欄位的值是連續的,並且是唯一的

我就新增一個自動增長列id(id是主鍵)

你這里沒有說表結構,我虛擬一個表結構

表:Test

欄位:id,ThisTimeInDept,ThisTimeInTime

sql語句如下:

SELECTb.ThisTimeInTime,casewhendatediff(dd,b.ThisTimeInTime,a.ThisTimeInTime)>1thenb.ThisTimeInDeptelse0end

fromTestaleftjoinTestb

onb.id=(selectmax(id)fromTestwhereid<a.id)

我這里為了方便比較前一條的日期也顯示出來了,效果圖如下

㈡ 關於sql的問題,同一個表中同列數據的比較,具體內容如下:

1.

electa.[名字]fromscoreainnerjoinscoreb
ona.[名字]=b.[名字]anda.[科目]='語文'andb.[科目]='數學'
wherea.[分數]>80andb.[分數]>80

2.

electa.[名字]fromscoreainnerjoinscoreb
ona.[名字]=b.[名字]anda.[科目]='語文'andb.[科目]='數學'
wherea.[分數]<b.[分數]

㈢ sql語句:比較同一表中的兩列,找出a列中有而b列中沒有的數據,並添加到c列

建表

createtablet
(aint,bint)

insertintotvalues(1,2)
insertintotvalues(2,3)

執行

selecta,b,casewhenbin(selectafromt)then1elsenullendfromt

結果

㈣ sql語句:比較同一表中的兩列,找出a列中有而b列中

建表 create table t(a int,b int)insert into t values (1,2)insert into t values (2,3)執行 select a,b,case when b in (select a from t) then 1 else null end from t結果sql語句:比較同一表中的兩列,找出a列中有而b列中

㈤ sql 同表欄位間如何比較

--同一個表時,直接用

select * from 表 where A<B

㈥ SQL中同一個表中如何進行對比查詢

selectt1.flow_no
from(selectflow_no,sum(old_amount)fffrompos_t_payflowgroupbyflow_no)t1
leftjoin(selectflow_no,sale_amountfrompos_t_payflowwhereflow_id='1')t2
ont1.flow_no=t2.flow_no
wheret1.ff<>coalesce(t2.sale_amount,-1)

㈦ Sql server 同一張表的,兩個列如何進行比較

查詢文件和實際保存路徑不一致的SQL

select*from表wherelen(replace(a,b,''))=len(a)

㈧ 怎樣用sql語句比較同一個表中不同記錄中相同數值的個數,並按個數的多少排序

來個比較簡單的~~
新插入的數據記錄的值肯定都知道吧,比如是 id = "101",name ="abc",date...
select id,name date,type,color,(t1.count1+t1.count2+count3+count4) as count from (
select id,name,date,type,color
,case when id = '101' then 1 else 0 end as count1
,case when date = 'xxx' then 1 else 0 end as count2
,case when type= 'xxx' then 1 else 0 end as count3
,case when color= 'xxx' then 1 else 0 end as count4
from a where name = 'abc') t1
group by (t1.count1+t1.count2+count3+count4) desc

㈨ 用sql將同一表中所有的A和B列的值做比較 將每行最大的值放到A中

兩種寫法

--1.更新B>A的數據,在WHERE判斷,性能更佳,無需更新到每一條數據
UPDATE表名SETA=BWHEREB>A
--2.更新所有的數據,在CASE里判斷
UPDATE表名SETA=CASEWHENB>ATHENBELSEAEND