我需要從一個SQL數據庫(一些組使用SQL Server,某些Oracle等)導出數據到一個CSV,我需要連接的表中的ID在一個字符串。SQL:將一個連接表的ID集合到一個字符串
例如,我有類的表和學生表。從課程開始,我需要身份證,姓名,部分,時間以及來自學生的信息。我需要班級中的一串學生ID。結果將返回列:id,名稱,節,時間,student_ids。該「student_ids」欄應爲分隔的字符串,如:
'32,43,53,12,41'
行輸出將結束是這樣的:
"1405,Computer Science,101,12-1:30,'32,43,53,12,41'"
每個班的學生人數並不一致,有可能成爲一名學生,或20名學生。我想過使用使用SQL Server來獲得這些數據,或者聚集鍵臨時表while循環,但我想知道是否有使用標準SQL來做到這一點,從而使腳本可以攜帶任何方式。
注:我知道輸出格式不理想,但唯一的另一種選擇是,我們將不得不爲每個班級/學生組合提供不同的記錄,然後必須分別彙總ID。
什麼樣的SQL?例如,MySQL有GROUP_CONCAT()。另外,一旦它被生成,你將如何使用它?我們可能能夠提供替代流程。 – MatBailie 2012-03-16 15:07:44
@Dems不幸的是,SQL變種,幾乎總是Oracle或SQL Server的一個版本,儘管 – 2012-03-16 15:14:21
@Dems此外,使用導出作爲以標準格式接收數據的一種方式,不幸的是使用額外的導出,如「class_student」不是一種選擇 – 2012-03-16 15:17:10