我有五個領域,我需要看看:FirstName,Surname,DateOfBirth,id和Postcode。
如果我運行它(使用 SQL Server Management Studio (SSMS)):
SELECT COALESCE(FirstName, Surname, DateOfBirth, id, Postcode)
FROM table1
它回傳這樣的結果:
1. DAVID
2. SUSAN
3. 764329
4. FRANK
5. STEPHANIE
6. HARRIS
7. 10/10/1967
8. E3 5QP
9. DAVID
10. JOHN
這樣做的問題在于,確定結果的來源并不總是那么容易。例如,DAVIDandJOHN很容易成為名字或姓氏。
有沒有辦法查看每個結果的來源?像這樣的東西:
1. DAVID FirstName
2. SUSAN FirstName
3. 764329 id
4. FRANK FirstName
5. STEPHANIE FirstName
6. HARRIS Surname
7. 10/10/1967 DateOfBirth
8. E3 5QP Postcode
9. DAVID Surname
10. JOHN Surname
也許兩列結果會很好:一列帶有結果,另一列帶有原點。
uj5u.com熱心網友回復:
你沒有指定 RDBMS,但如果你真的想使用,coalesce那么你可以嘗試這樣的事情:
SELECT COALESCE(CONCAT(FirstName,' First Name'), CONCAT(Surname,' Surname'),...)
FROM table1
使用CONCAT或 RDBMS 的特定方式進行連接。CONCAT如果元素之一為 null,則應回傳 null,因此它的作業方式應該相同。
您還可以使用CASE EXPRESSION@manibharataraju 在評論中建議的方式生成一個新列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/327561.html
