如果表中的列可用,我想返回一个列值,如果没有,则返回一个默认值,然后在连接两个表 SHAIN1 和 RIREKI14 时遇到 COLUMN_NAME 不明确错误。如果只从一个表中选择,则查询可以正常工作,但如果我加入两个表,我会遇到问题。
declare @sql nvarchar(max) = ' SELECT 1 as id, '+ (case when exists (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA ='dbo' and TABLE_NAME='RIREKI14' and COLUMN_NAME='KOM001') then 'KOM001' else 'NULL' end) + ' as day ' + ' From RIREKI14 join SHAIN1 on RIREKI14.INCODE = SHAIN1.INCODE '; exec sp_executesql @sql
请帮帮我!