如果记录存在,则检查列值sql

如果记录存在,则检查列值sql,sql,Sql,我是sql新手,我想写一个查询,它将返回一个地址计数,如果记录存在,那么城市的值应该是“Nagpur”。但允许用户有0个地址 地址 --------------------- UserId AddressId City 1 101 Delhi 2 102 Nagpur --------------------- 使用者 期望为用户id 2和3返回非零计数。问题解释得很糟糕:-第一:如果记录存在,那么城市的值应该是“Nagpur”是什么意思第二:左连接

我是sql新手,我想写一个查询,它将返回一个地址计数,如果记录存在,那么城市的值应该是“Nagpur”。但允许用户有0个地址

地址

---------------------
UserId AddressId City
1      101       Delhi
2      102       Nagpur
---------------------
使用者


期望为用户id 2和3返回非零计数。

问题解释得很糟糕:-第一:如果记录存在,那么城市的值应该是“Nagpur”是什么意思第二:左连接可能会有帮助……难道“期望是为用户id 1和3返回非零计数”不是吗?
SELECT
 U.UserID,
 COUNT(A.UserId)
FROM
 User U
 Join
 Address A ON U.UserId = A.UserId
GROUP BY
 U.UserID
SELECT
 U.UserID,
 COUNT(A.UserId)
FROM
 User U
 Join
 Address A ON U.UserId = A.UserId
GROUP BY
 U.UserID