只有一個組選擇多列,我需要查詢表中的一個表得到DELIVERYCUSTOMER
沒有重複的名字 。 例如,下面的表格考慮與圖片(另一個細節是不同的):SQL:如何通過
我嘗試這樣
;WITH Cutomers as (
select DELIVERYCUSTOMER
from delivery_details
group by DELIVERYCUSTOMER)
select
m.DELIVERYADDRESS1,
m.DELIVERYPHONE,
m.contact_person,
m.contact_address,
m.DELIVERYCUSTOMER, m.LATITUDE, m.LONGITUDE
from delivery_details as m
where DELIVERYCUSTOMER LIKE 'Sor%'
join Cutomers as c on c.DELIVERYCUSTOMER = m.DELIVERYCUSTOMER
結果查詢仍顯示重複名稱
我只需要當我搜索喜歡Bu
它會顯示客戶開始名名單「卜」,我可以得到另一個細節展現,如地址,電話,緯度,經度
我在SQL運行數據將顯示像
SELECT DELIVERYCUSTOMER, DELIVERYADDRESS1, DELIVERYPHONE, contact_person, contact_address, LATITUDE, LONGITUDE
FROM delivery_details WHERE DELIVERYCUSTOMER LIKE 'Bu%' GROUP BY DELIVERYCUSTOMER
我得到的數據是這樣
此表和列有超過40+ 我用這個得到
編輯 ::我用這個查詢來搜索DELIVERYCUTOMER來獲取名稱和在該表中,以便ID,delivery_type,delivery_order,等另一個細節是不同
SQL Server的版本是2012
單個'DELIVERYCUSTOMER'有多個緯度和經度。如果你不想重複'DELIVERYCUSTOMER',那麼你會選擇哪一個「緯度/經度」? –
如果你選擇m.LATITUDE,m.LONGITUDE那麼它顯示你重複。所以在選擇語句中刪除m.LATITUDE,m.LONGITUDE然後它將顯示唯一的結果 –
@ swett.bp你不能這樣做,你將不得不將所有列在'select'中添加到'group by' –