如何在 SQL 中添加两个 WHERE

0 sql sql-server where-clause where-in

SELECT ID_worker, Name_worker, salary+500,
FROM Supermarket
WHERE ID_worker IN ("2","4");
Run Code Online (Sandbox Code Playgroud)

上述查询有效,因为它将 ID 为 2 或 4 的工人的工资加 500。问题是只有 ID 为 2 和 4 的工人出现。我希望他们所有人都出现,即使是工资保持不变的人。我怎么做?

小智 7

有几种方法可以做到这一点,但最直接的是使用 case 条件并完全删除 select 的 where 条件,例如:

select 
  ID_worker, 
  Name_worker, 
  case when ID_worker in ('2','4') then salary+500 else salary end, 
from Supermarket
Run Code Online (Sandbox Code Playgroud)