[英]Merging rows from the same column in SQL
我知道有很多關於此的文章,但我只是不明白該怎么做?
這是我正在使用的代碼(此處未合並):
SELECT coupon_code, order_id, youwp_woocommerce_order_itemmeta.meta_value, youwp_postmeta.meta_value
FROM `youwp_woocommerce_order_items`, `youwp_woocommerce_order_itemmeta`, `youwp_postmeta`, `you_ambassador`
WHERE you_ambassador.user_id = 1
AND youwp_woocommerce_order_items.order_item_name = you_ambassador.coupon_code
AND order_id = youwp_postmeta.post_id
AND youwp_woocommerce_order_items.order_item_id = youwp_woocommerce_order_itemmeta.order_item_id
AND youwp_woocommerce_order_itemmeta.meta_key = 'discount_amount'
AND (youwp_postmeta.meta_key = '_billing_first_name' OR youwp_postmeta.meta_key = '_billing_last_name')
這給了我:
我想合並/合並meta_value數據“ Kennet Leth”和“Sørensen”,它們是:
youwp_postmeta.meta_key ='_billing_first_name'
youwp_postmeta.meta_key ='_billing_last_name'
我使用STUFF或MAX和GROUP BY找到了類似問題的一些答案,但我只是不理解語法?
是在答案使用t1和t2或A和B(t1.value-t2.value或A.value = B.value)之類的選擇時,我才不明白嗎?
我試圖更改這些解決方案,以使其適合我的代碼,但無法使其正常工作:
SELECT STUFF((SELECT ', ' + A.[Bank Account No] FROM tbl_Customer_Bank_Details A
Where A.[Customer ID]=B.[Customer ID] FOR XML PATH('')),1,1,'') As [Bank Accounts]
From tbl_Customer_Bank_Details B
Group By [Customer ID], [Customer Name]
要么
SELECT Code,
( SELECT Name + ' '
FROM Table1 t2
WHERE t2.Code = t1.Code
ORDER BY Name
FOR XML PATH('') ) AS Name
FROM Table1 t1
GROUP BY Code ;
如何輸入表和列的值?
編輯:
為了澄清起見,我試圖合並“ youwp_postmeta.meta_value”列中的2行/結果。
我從指定的結果:
WHERE (youwp_postmeta.meta_key = '_billing_first_name'
OR youwp_postmeta.meta_key = '_billing_last_name')
AND order_id = youwp_postmeta.post_id
所以我為每個order_id獲得2行,為_billing_first_name分配一個行,為_billing_first_name分配一個行,這些是我要合並/合並的行。
找到了一種方法來做到這一點;)
剛剛更改了我的SELECT字符串以包括下查詢和CONCAT():
SELECT coupon_code, order_id, im.meta_value,
CONCAT((SELECT pm.meta_value FROM `youwp_postmeta` AS pm WHERE pm.meta_key =
'_billing_first_name' AND order_id = pm.post_id), ' ',
(SELECT pm.meta_value FROM `youwp_postmeta` AS pm WHERE pm.meta_key =
'_billing_last_name' AND order_id = pm.post_id)) AS name
FROM
`youwp_woocommerce_order_items` AS i,
`youwp_woocommerce_order_itemmeta` AS im,
`youwp_postmeta` AS pm,
`you_ambassador` AS a
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.