看板 Database 關於我們 聯絡資訊
(針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行) 資料庫名稱:ms-sql 資料庫版本:2019 內容/問題描述: 欄位很多 我想替換某個欄位名稱 跟欄位內的資料 但因為過於複雜 所以先從最簡單的操作 select * from 材料明細檔 開始嘗試 材料檔內有10~15個欄位 以下是參考的文章 https://www.sqlservercentral.com/forums/topic/how-to-use-stuff-and-for-xml-path-to-get-a-list-of-column-names-in-order-by-column_id https://reurl.cc/AyWpQK 縮網址 目前的狀況是 能夠找到所有欄位名稱 並且也能print 出來 但無法帶入回select * from 材料明細檔 把資料找出來 是否有哪裡出錯了 DECLARE @Cols nvarchar(MAX) SELECT @Cols=STRING_AGG(QUOTENAME(c.COLUMN_NAME), ', ') WITHIN GROUP (ORDER BY c.ORDINAL_POSITION ASC) FROM INFORMATION_SCHEMA.COLUMNS c WHERE c.TABLE_NAME='材料明細檔' AND c.TABLE_SCHEMA='dbo' select @Cols from dbo.材料明細檔 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.152.194 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1672653868.A.0F9.html ※ 編輯: waiter337 (114.35.152.194 臺灣), 01/02/2023 18:57:01
cutekid: exec("select " + @Cols + " from 材料明細") 01/02 20:22
waiter337: 感謝 搞定! 01/02 21:26