我對此主題有兩個STUFF
問題。STUFF函數在SQL Server和ORACLE中
第一個問題是STUFF
函數在SQL Server中。第二個問題是關於Oracle(8i)中的STUFF
函數。
問題1:如何從列中刪除,
我想要的東西?
例如,假設表:
ID Country Payment Product
12345 USA Cash Red wine
12345 USA Cash
12345 USA Cash
使用這個腳本,它產生:
select distinct Country, Payment,
stuff(isnull((select ', ' + x.Product from #temp x where x.ID = t.ID
group by x.Product for xml path ('')), ''), 1, 2, '') as Product
ID Country Payment Product
12345 USA Cash , Red wine
如何刪除結果只顯示Red wine
只(刪除逗號(,)
請注意:我沒有寫這個STUFF
函數,它是由一個名叫OMG Ponies的人寫的
問題2:同問題1,但語法是Oracle:
select distinct ID, Country, Payment, WM_CONCAT(Product) AS Products
from
(
select distinct ID, Country, Payment, Product
from temp table
)x
group by ID, Country, Payment
我想我的結果只顯示Red wine
只(刪除逗號(,)。
這在我看來應該是兩個不同的問題。 – 2012-08-15 14:16:05
是的,這是兩個單獨的問題,如上所述 – joe 2012-08-15 14:21:28
關於StackOverflow的問題只能有一個「最好」或「接受」的答案。這一個可能會有兩個,因爲一個人將發佈正確答案的可能性很小。我強烈建議爲Oracle問題提出一個單獨的問題。 – 2012-08-15 14:23:18