我有一個表部分(不,描述,繪製)。如何處理列並將其作爲查詢的一部分返回?
我想在表中以這種形式返回所有部分的列表:
Part Number| Description | Is Packed ? (Yes/No)|
------------------------------------------------
在結果集,是擠滿頭應該是如果拉伸列不空,沒有如果除此以外。
我正在使用PL/SQL。
我不知道該怎麼做。
我有一個表部分(不,描述,繪製)。如何處理列並將其作爲查詢的一部分返回?
我想在表中以這種形式返回所有部分的列表:
Part Number| Description | Is Packed ? (Yes/No)|
------------------------------------------------
在結果集,是擠滿頭應該是如果拉伸列不空,沒有如果除此以外。
我正在使用PL/SQL。
我不知道該怎麼做。
SELECT No AS "Part Number", Desc AS "Description",
CASE
WHEN Draw IS NOT NULL THEN 'Yes'
ELSE 'No'
END AS "Is Packed"
FROM Part
您可能需要在字段列表中轉義Desc
,因爲它是保留字。
使用CASE
:
CASE WHEN Draw IS NOT NULL THEN 'Yes'
ELSE 'No'
END AS column_alias
作爲替代CASE
(見其他答案)在這種情況下,你可以使用NVL2
:
BTW:你應該韋迪創建一個數據庫對象(表/列...)與一個名稱是一個保留字(在你的情況下Desc
) - 這可能會導致真正奇怪的事情...
如果他實際上使用了'desc'作爲列名,他在創建表時會得到'ORA-00904:invalid identifier',但這是一個很好的提及。 –
@BQ,如果列名稱在表格創建腳本中使用雙引號,則完全可以這樣做。不幸的是,我經常從我們的供應商處收到的腳本中看到雙引號的對象名稱。 – AndyDan
如果他真的lly使用'desc'作爲列名,當創建表時他會得到'ORA-00904:invalid identifier',但這是一個很好的提及。 –
@BQ,如果列名稱在表格創建腳本中使用雙引號,則完全可以這樣做。不幸的是,我經常從我們的供應商處收到的腳本中看到雙引號的對象名稱。 – AndyDan