如何在SQL中编写多表排他查询?附特定用户ID计数示例
解决SQL统计符合条件的user_id记录总数问题
你可以用下面的SQL语句实现需求,记得把your_table_name替换成实际的表名:
SELECT COUNT(*) AS total_records FROM your_table_name WHERE user_id BETWEEN 10 AND 50 AND user_id NOT IN (20, 30);
语句说明:
COUNT(*):统计符合条件的所有记录行数user_id BETWEEN 10 AND 50:筛选出user_id在10到50之间(包含10和50)的记录user_id NOT IN (20, 30):排除user_id为20和30的记录
如果表中存在重复的user_id记录,且你需要统计唯一的user_id数量,可以改用COUNT(DISTINCT user_id):
SELECT COUNT(DISTINCT user_id) AS unique_user_count FROM your_table_name WHERE user_id BETWEEN 10 AND 50 AND user_id NOT IN (20, 30);
内容的提问来源于stack exchange,提问作者Nick
相关产品推荐
相关产品推荐

