SQL數(shù)據(jù)庫兩個(gè)表的組合查詢問題

2022-09-20 00:40

2個(gè)回答
dosage是數(shù)字形式的嗎?
如果不是, 就不太可能,如果是, 我再告訴你, 記得加分。
分兩步來算。
第一步:先把表2的數(shù)據(jù)由橫表轉(zhuǎn)為豎表,name 這個(gè)字段先空著,第二步來匹配。有的用戶只有8,9個(gè)月有數(shù)據(jù),對(duì)于這種情況,可以將沒有的數(shù)據(jù)寫為0.比如說a用戶沒有12月的數(shù)據(jù),那么對(duì)應(yīng)的month12字段數(shù)據(jù)為0,有的則對(duì)應(yīng)成 dosage 。代碼為:
insert into 表3(number,month1,month2,month3......month12)
select number,
sum(case when month = 1 then dosage else 0 end) month1,
sum(case when month = 2 then dosage else 0 end) month2,
........
sum(case when month = 12 then dosage else 0 end) month12
group by number
注意:month = 1 這個(gè)要根據(jù)你表2中的字段類型來寫,比如month的數(shù)據(jù)是‘一月份’,則要寫成month='一月份'。1到12 同理。
第二步:匹配
update 表3 a
set a.name = b.name
from 表1 b
where a.number=b.number
相關(guān)問答
sql數(shù)據(jù)庫查詢中,空值查詢條件怎么寫?
3個(gè)回答2023-03-13 10:45
在MS SQL Server和Oracle這兩個(gè)主要的數(shù)據(jù)庫中,空值都比較特殊,不能直接用"="或"<>"號(hào)來比較,如果你要用這兩個(gè)符號(hào)比較,就會(huì)發(fā)現(xiàn),空值即不在等于的集內(nèi),也不在不等于的集內(nèi)。 ...
全文
怎樣用SQL語句查詢一個(gè)數(shù)據(jù)庫中的所有表
1個(gè)回答2022-08-26 05:43
--讀取庫中的所有表名 select?name?from?sysobjects?where?xtype='u' --讀取指定表的所有列名 select?name?from?syscolumns?whe...
全文
sql數(shù)據(jù)庫查詢出來的數(shù)據(jù)從大到小排序
4個(gè)回答2022-09-11 08:02
利用order by進(jìn)行排序,降序(從大到寫)可以用desc,升序(從小到大)是默認(rèn)的
sql數(shù)據(jù)庫中有一個(gè)表,我要查詢這個(gè)表中的一列中有那些內(nèi)容是相同的,
1個(gè)回答2022-09-20 03:55
select * from 表名 where 列名='%公司%' 就可以了 公司是你要查詢的內(nèi)容..如果要查詢其它..改一改就行了
查詢數(shù)據(jù)庫中某個(gè)字段的sql語句怎么寫
2個(gè)回答2023-02-26 02:20
一般的可以這樣寫: select * from 你的表名 where 想查找的字段名 ='想查找的值' 要注意的事項(xiàng),如果[想查找的值]為文本時(shí) 注意要使用 單引號(hào)'' 括起來 數(shù)值不用,日期要...
全文
sql查詢每月同一日數(shù)據(jù)
1個(gè)回答2022-11-03 13:01
SELECT * FROM user_config u where DATE(u.last_update_date)='09'; 要加引號(hào)
SQL怎么查詢兩個(gè)表中不同的數(shù)據(jù)?
1個(gè)回答2023-01-07 16:33
1,關(guān)鍵是第一步,你要找出表1中有,而表2中沒有的數(shù)據(jù)行.,select t1.* from 表1 t1 left join 表2 t2 on t1.?=t2.? 2, 以什么列相同判定為有,都...
全文
SQL怎么查詢兩個(gè)表中不同的數(shù)據(jù)
2個(gè)回答2022-10-04 12:15
工具/材料:Management Studio。 1、首先在桌面上,點(diǎn)擊“Management Studio”圖標(biāo)。 2、其次在該界面中,點(diǎn)擊“新建查詢”按鈕。 3、繼續(xù)在該界面中,輸...
全文
“SQL數(shù)據(jù)庫的兩張表聯(lián)立查詢?cè)趺醋?”
1個(gè)回答2022-10-26 06:50
select a.* ,b.* from a left outer join b on a.ID=b.OID 通過聯(lián)接的方式,將二個(gè)表關(guān)聯(lián)起來。
熱門問答