MySql(高级操作符--操作符混合运用)

17.现在运营想要找到gpa在3.5以上(不包括3.5)的山东大学用户 或 gpa在3.8以上(不包括3.8)的复旦大学同学进行用户调研,请你取出相应数据,取出的数据按照device_id升序排列

示例:user_profile

|----|-----------|--------|------|------------|----------|-----|
| id | device_id | gender | age | university | province | gpa |
| 1 | 2138 | male | 21 | 北京大学 | BeiJing | 3.4 |
| 2 | 3214 | male | NULL | 复旦大学 | Shanghai | 4 |
| 3 | 6543 | female | 20 | 北京大学 | BeiJing | 3.2 |
| 4 | 2315 | female | 23 | 浙江大学 | ZheJiang | 3.6 |
| 5 | 5432 | male | 25 | 山东大学 | Shandong | 3.8 |

根据输入,你的查询应返回以下结果:(该题对于小数点后面的0不需要计算与统计,后台系统会统一输出小数点后面1位)

|-----------|--------|------|------------|-----|
| device_id | gender | age | university | gpa |
| 3214 | male | NULL | 复旦大学 | 4 |
| 5432 | male | 25 | 山东大学 | 3.8 |

sql 复制代码
--方法1
SELECT device_id,gender,age,university,gpa
FROM user_profile
WHERE (gpa > 3.5 AND university = '山东大学')
OR 
(gpa > 3.8 AND university = '复旦大学')
ORDER BY device_id ASC
--方法2
SELECT device_id, gender, age, university, gpa 
FROM user_profile 
WHERE device_id in (SELECT device_id FROM user_profile WHERE gpa>3.5 AND university='山东大学') OR 
device_id in (SELECT device_id FROM user_profile WHERE gpa>3.8 AND university='复旦大学') 
相关推荐
许彰午1 小时前
28-ORA-01110数据文件读取错误
数据库·oracle
凯凯姜1 小时前
MySQL 联合索引设计与索引失效
数据库·mysql
猫咪很可爱1 小时前
Oracle TEMP 表空间不足(ORA-01652)问题分析与优化实践
数据库·oracle
九零HTTP3 小时前
10月21号-CSDN配菜-IP池的5个坑
服务器·数据库·tcp/ip
Data-Miner3 小时前
需要做财务数据分析,有什么好用的工具?从准备到出报告的实操指南
大数据·数据库·数据分析
袋鼠云数栈4 小时前
让 SQL 解析不再重复造轮子:SqlParserX 正式开源
数据库·人工智能·sql·开源·数据治理
这个DBA有点耶4 小时前
期货 CTP 系统 Oracle RAC 迁移国产库实战:读写分离架构设计与性能对标
数据库·架构·dba
数据库安全4 小时前
AI数据访问安全 |如何控制AI访问权限,防止越权
数据库·安全
程序员老赵5 小时前
Docker 部署 Hue:轻松搭建数据库与数据仓库 SQL 查询平台
sql·docker·开源
小羊没烦恼!5 小时前
异步编程:线程概述及使用
java·开发语言·mysql·算法·c#