Sql 案例陈述未给出正确值的问题

Sql 案例陈述未给出正确值的问题,sql,Sql,我在SQL Developer中使用以下CASE语句: 案例 当([药物]=“N”)和([名称]=“STYMES”)和([原始单位]不为空)时,则为“Y” 当([药物]=“N”)和([名称]=“时间”)和([原始单位]为空)时,则为“N” 当([药物]=“Y”)和([名称]=“时间”)和([原始单位]不为空时,则为“N” 当([药物]=“Y”)和([名称]=“时间”)和([原始单位]为空)时,则为“Y” 结束 当我至少应该获得N时,我的结果为空。如果您只想在其他条件不满足时获得“N”,则可以使

我在SQL Developer中使用以下CASE语句:

案例
当([药物]=“N”)和([名称]=“STYMES”)和([原始单位]不为空)时,则为“Y”
当([药物]=“N”)和([名称]=“时间”)和([原始单位]为空)时,则为“N”
当([药物]=“Y”)和([名称]=“时间”)和([原始单位]不为空时,则为“N”
当([药物]=“Y”)和([名称]=“时间”)和([原始单位]为空)时,则为“Y”
结束

当我至少应该获得
N

时,我的结果为空。如果您只想在其他条件不满足时获得“N”,则可以使用ELSE关键字,如中所示:

case  
  when ([Medication]="N") AND ([Name]="STYMES") AND([Original Units] is not null) then "Y" 
  when ([Medication]="N") AND ([Name]="STYMES") AND([Original Units] is null) then "N" 
  when ([Medication]="Y") AND ([Name]="STYMES") AND([Original Units] is not null) then "N" 
  when ([Medication]="Y") AND ([Name]="STYMES") AND([Original Units] is null) then "Y" 
  else "N"
end

如果名称不是STYMES或药物字段包含N或Y以外的内容(例如,1、0、NULL、TRUE、FALSE、yak),会发生什么情况?如果名称不是STYMES且药物字段包含Y,则我希望收到Y