SQL Server 2000:在没有返回记录时返回一个值

时间:2012-11-01 17:44:43

标签: sql-server excel excel-vba sql-server-2000 vba

我在Excel文档中有大约1500个部件号的列表。我想在查询中插入这些部件号以从我的数据库中提取描述,然后将结果复制/粘贴回Excel文档。

问题是我列表中的部分号码不在我的数据库中,因此当我将查询结果复制/粘贴到Excel中时,它们不会匹配,因为某些部件号在查询中不返回结果。

SELECT ITEM.ITEMNO, ITEM.DESCRIPTION 
FROM ITEMS 
WHERE ITEM.ITEMNO IN ('1500','Part','Numbers')

这似乎是一个简单的概念,我的谷歌搜索已经返回了很多结果,但它们通常涉及多个表和联合/联接。我只是无法将我见过的例子翻译成我的查询。如果VBA是一个更好的选择,那我就是全心全意。

1 个答案:

答案 0 :(得分:0)

select a.ITEMNO, IFNULL(i.DESCRIPTION, 'N/A')
from (
    select '1500' as ITEMNO
    union all select 'Part'
    union all select 'Numbers'
) a
left outer join ITEMS i on a.ITEMNO = i.ITEMNO