sql - 不等于运算符的挑战
问题描述
我有一个问题要解决。我想仅使用 where 子句从下表中获取性别不等于女性的国家/地区。我不想使用子查询,例如:从国家不在的表中选择国家(从性别='女性'的表中选择国家)
有任何想法吗 ?
ID Name Gender Country
1 Jhon Male USA
2 Katie Female USA
3 Steave Male UK
4 Gerry Female UK
5 Brad Male AUS
问候,钱德拉。
解决方案
您可以使用以下方法避免子查询并获得完整的行:
SELECT TOP 1 WITH TIES *
FROM tab
ORDER BY SUM(CASE WHEN Gender='Female' THEN 1 ELSE 0 END)
OVER(PARTITION BY Country);
推荐阅读
- rust - 特征`可查询
使用柴油查询数据时,未针对 `&i64` 实现` - sql - Concat 在 case 语句中不起作用
- c++ - const auto &it 和 auto &it 的区别
- sql-server - 使用单元格中的逗号将 CSV 文件导入 SQL Server
- r - Shiny中的连续计算
- javascript - React Native:将 Expo 裸项目转换为纯 React Native 应用程序
- reactjs - 如何将 TypeScript 合并到 Next.js 项目中?
- jquery - 如何使用“Ajax.BeginForm”将某个 div 替换为另一个?
- android - 反应原生 - 顶部选项卡导航 - 选项卡在 android 设备上不可点击
- azure - 通过 azure 函数将事件发布到 azure 事件网格