如果整个结果集有效,我想将有效列值分配给变量。因此,如果列值有效(非空且不为空),则需要编写检查整个结果集的SQL查询,然后将第一列值分配给该变量,否则检查具有相同条件的第二列并分配给变量。
例如:如果我的表具有包含100条记录的列FirstName,我需要检查所有记录是否有效(非空或非空)记录假设第99条记录为空然后我需要检查LastName列并将其分配给变量。
提前致谢。
答案 0 :(得分:0)
您可以使用CASE
:
SELECT
CASE
WHEN FirstName IS NULL OR FirstName = '' THEN ISNULL(LastName, '')
ELSE FirstName END
FROM
Tbl
答案 1 :(得分:0)
您可以使用If exists来确定列是否有效:
if not exists (select 1 from table where col1 is null)
begin
select top(1) col1 from table
end