當前位置:首頁 » 編程語言 » 萬能SQL合並結果到一個欄位
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

萬能SQL合並結果到一個欄位

發布時間: 2022-06-04 22:49:43

『壹』 sql中如何合並多條記錄的某一個欄位

這個可以寫一個函數:
create function f1(@id AS int)
returns varchar(100)
as
declare @a as varchar(100)
set @a=''
select @a=@a+','+備注 from 表2 where cid=@id
return substring(@a,2,len(@a))
然後這樣寫查詢:
select 企業名稱,聯系人,f1(id) from 表

『貳』 SQL循環查詢如何合並查詢結果到一個表,每個結果表作為一個欄位

簡單寫了一個sqlserver的

按照你說的建個表,放了點數據

createtable訂單
(訂單號int,
訂單日期datetime,
訂單價值int)

insertinto訂單values(1,'2013-05-01',10)
insertinto訂單values(2,'2013-05-01',20)
insertinto訂單values(3,'2013-06-01',30)
insertinto訂單values(4,'2013-06-01',40)
insertinto訂單values(5,'2013-07-01',50)
insertinto訂單values(6,'2013-08-01',60)
insertinto訂單values(7,'2013-08-01',70)
insertinto訂單values(8,'2013-09-01',80)
insertinto訂單values(9,'2013-09-01',90)
insertinto訂單values(10,'2013-10-01',100)
insertinto訂單values(11,'2013-10-01',110)
insertinto訂單values(12,'2013-11-01',120)
insertinto訂單values(13,'2013-11-01',130)
insertinto訂單values(14,'2013-12-01',140)

你要查上個月到之前某個月的

所以執行這個

declare@sqlvarchar(4000)
declare@indexint
set@index=2--這個就是你說的要查前某個月的,這里寫2就代表9,10,11三個月
set@sql='select''匯總''as匯總'
select@sql=@sql+',sum(isnull(caseconvert(varchar(7),訂單日期,120)when'''+convert(varchar(7),[訂單日期],120)+'''then[訂單價值]end,0))as
['+convert(varchar(7),[訂單日期],120)+']'
from(selectdistinctconvert(varchar(7),訂單日期,120)訂單日期from[訂單]where
convert(varchar(7),訂單日期,120)>=convert(varchar(7),dateadd(month,(-1-cast(''+@index+''asint)),getdate()),120)
andconvert(varchar(7),訂單日期,120)<convert(varchar(7),getdate(),120))asa
select@sql=@sql+'from[訂單]'
exec(@sql)--這句我是執行sql,你可以直接把上句改成createtable的形式,把sql語句print出來,看看

結果

『叄』 求問SQL如何將多個欄位合並成一個並且數據對照關系不變

select 名稱,年月,第一天 from表
union all
select 名稱,年月,第二天 from表
union all
select 名稱,年月,第三天 from表
union all
……
union all
select 名稱,年月,第三十一天 from表

『肆』 sql 里 怎麼把一列的值合並成一個字元串

1、創建測試表,

create table test_str_concat(id varchar2(20), value varchar2(20));

『伍』 sql中如何合並兩個特定的欄位

1、創建模擬的數據表

create table GoodsCate(

Mid int not null,

Code varchar(10) not null,

Name varchar(20) not null,

)

『陸』 sql把幾個文本欄位內容合並到一個欄位

select '文本欄位'+'文本欄位' 如果想給這個欄位起個名稱的話 就是select '文本欄位'+'文本欄位' as 名稱 就這樣就可以了 謝謝

『柒』 1、sql查詢語句時怎麼把幾個欄位拼接成一個欄位這幾個欄位是整型的。

1、語句如下:

select 欄位A, 欄位B, 欄位A + 欄位B as 欄位C From 表1

註:欄位A加上欄位B的計算列命名為欄位C

2、計算列

計算列由可以使用同一表中的其他列的表達式計算得來。表達式可以是非計算列的列名、常量、函數,也可以是用一個或多個運算符連接的上述元素的任意組合。表達式不能為子查詢。

原題的答案就是「計算列」。

(7)萬能SQL合並結果到一個欄位擴展閱讀:

計算列應用范圍

計算列可用於選擇列表、WHERE 子句、ORDER BY 子句或任何可使用正則表達式的其他位置,但下列情況除外:

用作 CHECK、FOREIGN KEY 或 NOT NULL 約束的計算列必須標記為 PERSISTED。如果計算列的值由具有確定性的表達式定義,並且索引列中允許使用計算結果的數據類型,則可將該列用作索引中的鍵列,或者用作 PRIMARY KEY 或 UNIQUE 約束的一部分。

例如,如果表中含有整數列a和b,則可以對計算列a+b創建索引,但不能對計算列a+ DATEPART(dd,GETDATE()) 創建索引,因為在後續調用中,其值可能發生改變。

計算列不能作為 INSERT 或 UPDATE 語句的目標。

資料庫引擎基於使用的表達式自動確定計算列的為 Null 性。即使只有非空列,大多數表達式的結果也「認為」可為空值,因為下溢或溢出生成的結果也可能為空。使用帶AllowsNull屬性的 COLUMNPROPERTY 函數可查明表中任何計算列的為 Null 性。

通過指定 ISNULL (check_expression,constant) 可以將可為空值的表達式轉換為不可為空值的表達式,其中,constant是可替換所有空結果的非空值。

網路.計算列



『捌』 sql怎樣把兩個欄位合並成一個欄位顯示

SELECTCONCAT(欄位1,欄位2,...)FROM表名;