㈠ sql如何按條件把相同記錄合並成一條記錄
樓主要實現的是金額動態列吧!動態列的實現一般可以用兩部來實現,第一步拼接group出SQL,第二步拼接sql,比如樓主的需求可以這樣來實現
1: select 'sum (case when 金額 = '' '金額' '' then 金額 else 0 end) ' from 數據表 group by 金額
2: 將上面的結果字元 用程序處理並拼接起來,可以得到,拼接後的結果如下:
select 單號 ,sum (case when 金額 = 金額1 then 金額 else 0 end) as 金額1 ,
sum (case when 金額 = 金額2 then 金額 else 0 end) as 金額2
from 數據表 group by 單號
㈡ SQL如何將某一列中相同的數據合並
SELECT GROUP_CONCAT( 欄位名 ) FROM 表名
並將該欄位 在WHERE條件下 GROUP BY
㈢ SQL 相同結構的資料庫怎麼合並
不相同的會員不用處理嗎?
怎麼判斷是否相同?
我先按照RealName判斷,執行下面的SQL,前提是兩個資料庫db1和db2在同一個伺服器
update a set a.balance=a.balance+b.balance,a.score=a.score+b.score from db1.dbo.member a inner join db2.dbo.member b on a.realname=b.realname
㈣ 如何用sql 語句將兩個數據表相同欄位合並成另外一個表
select a,b,c from tb1
union (all)�0�2
select d,e,f from tb2
要去除重復的用union,不去除得話用union alld,e,f的數據類型要可以轉換成a,b,c
㈤ sql 語句,如何將數個相同表中的數據合並到一張表中
這個問題首先必須基於table1,table2,table3這3張表各自的time欄位無重復值,否則每個有重復的時間,都可能會組合成N多種組合(假如這3張表每一張都有兩條時間為2012-07-31 01:00:00的記錄,那麼單單就「2012-07-31 01:00:00」這個時間就可以組合成2x2x2=8中組合,重復愈多出現的組合越多,大的重復記錄,因互相乘積的原因,很容易會導致出現天文數字種組合。它一方面會導致效率低下,另一方面還會出現在這些組合中到底取捨那條記錄的問題,有時候單憑SQL是很難解決。因此如要實現樓主的要求,應確保各自表中無重復時間記錄,否則合並結果將難令人滿意,樓主可以測試各種情況和代碼以證實的本人說法。
先用UNION操作符求出3張表唯一的時間列表,該子查詢表取別名t,然後分別用 t 與其它3張表基於time欄位進行left join,最後求出最終結果集。
為了便於理解該SQL語句,我對那3張表未使用表別名,代碼字元數看起來會比較多。
select table1.[value] as value1,table2.[value] as value2,table3.[value] as value3,t.[time] from
(((select [time] from table1 union select [time] from table2 union select [time] from table3) t
left join table1 on
t.[time]=table1.[time])
left join table2 on
t.[time]=table2.[time])
left join table3 on
t.[time]=table3.[time]
order by t.[time]
註:基於單獨表內無重復時間記錄。代碼已測試通過,如果樓主有超過3張以上相同的表,照套上面寫法即可,
如果4張以上的表相關SQL代碼不知如何寫,可以向我發追問。
㈥ sql合並重復數據並求和
***********************
根據你的補充補充回答:
***********************
select a,sum(b) as 記錄數,max(c) as c
from 表名
group by a;
---
以上,希望對你有所幫助。
㈦ SQL 如何將一個表中的兩條或多條擁有相同ID的記錄合並為一條
你好,如果是查詢出來顯示的話 直接 分組就行了
如果你要是 把上面的數據生成新的數據插入到表中的話...就直接插入操作.
希望能幫到你吧!
㈧ SQL查詢出兩個數據表,再通過這兩個表的相同欄位合並成一個數據表,急急急
你試一下,不知對不對 呵呵
seletct 物料代碼,期初數據,總入庫數量,總出庫數量,(期初數據+總入庫數量-總出庫數量) as 結存數據 from
(select * from a full join b on a.物料代碼=b.物料代碼) c
㈨ 將兩個相同的SQL資料庫中的數據,合並到一個資料庫中(使用腳本完成)
--1、union追加數據行 --新增行放在最前 select '選擇法會' as CompanyName union all select CompanyName from customers --新增行放在最尾 select '選擇法會' as CompanyName union select CompanyName from customers --2、多張表union --兩表 select lastname,firstname from employees union select CompanyName,contactname from customers --三表: select lastname,firstname from employees union select CompanyName,contactname from customers union select shipcountry,shipcity from orders --注意:兩個表要有相同的欄位數目,且數據類型也要相同,不相同類型的欄位,可以進行強制轉化
求採納
㈩ sql查詢結果中有id相同的欄位如何對查詢結果進行操作將id相同的合並為一條數據
也不說你是用的什麼資料庫,sqlserver為例
建表
createtableclass
(classidint,
classnamevarchar(10),
teacheridint)
insertintoclassvalues(1,'一班',1)
insertintoclassvalues(1,'一班',2)
insertintoclassvalues(2,'三班',1)
createtableteacher
(teacheridint,
teachernamevarchar(10))
insertintoteachervalues(1,'zhangsan')
insertintoteachervalues(2,'lisi')
執行
withtbas
(selecta.classid,a.classname,b.teachername
fromclassaleftjointeacherb
ona.teacherid=b.teacherid)
selectclassid,classname,teachername=stuff((select','+=tb.classidandclassname=tb.classnameforxmlpath('')),1,1,'')
fromtb
groupbyclassid,classname
結果截圖