程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> SQL 歸並多行記載的雷同字段值

SQL 歸並多行記載的雷同字段值

編輯:MSSQL

SQL 歸並多行記載的雷同字段值。本站提示廣大學習愛好者:(SQL 歸並多行記載的雷同字段值)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL 歸並多行記載的雷同字段值正文


1.從數據庫中先查詢相符前提的記載,寄存於一個DataTable中,在應用c#等開端遍歷這張表,應用DataRow中的主鍵,再去讀取響應的相符前提的多筆記錄,歸並這些第二次讀取到的記載內容,前往給後面的這個DataRow數據行。如許做沒有錯,然則假如數據量年夜,我們能夠面對有數次的翻開斷開數據庫鏈接,速度效力將會很低。
2.從數據庫中一次讀取數據到一張表中前往並顯示到UI層。說起來誰都想這麼做,然則之前太笨,沒有去研討這個,明天由於數據量較年夜的緣由,讓我不能不想些其他方法來進步點效力。
Google~hk一下,果真有謎底,然後依葫蘆畫瓢,本身寫了一個
目標是獲得不定量的相符前提的兼職記載,並將每一個兼職介入項目情形記載到某幾個字段傍邊,然後一次前往Table

Create function Fn_GetJobListByPID--創立自界說函數獲得指定兼職介入的一切項目編號及項目數目
(
@ParttimerID int
)
returns @t table(Jobs varchar(5000),ParttimerID int,TotalCount int)
as
begin
declare @sql varchar(5000),@TotalCount int
set @sql=''
set @TotalCount=0
select @sql=@sql+j.JobNo+'-'+j.JobWave+' ',@TotalCount=@TotalCount+1
from ONJB_JobApplication a,ONJB_Jobs j
where a.ParttimerID=@ParttimerID
and a.Result='V'
and a.JobID=j.JobID
insert @t values(@sql,@ParttimerID,@TotalCount)
return
end

援用

--...........................
--做過項目
left join (select Jobs,ParttimerID,TotalCount From Fn_GetJobListByPID(@ParttimerID)) as j1
on p.ParttimerID=j1.ParttimerID
--在做項目
left join (select CurJobs,ParttimerID,CurCount From Fn_GetCurJobsByPID(@ParttimerID)) as j2
on p.ParttimerID=j2.ParttimerID
where p.ParttimerID=@ParttimerID
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved