diff --git a/数据库脚本/查询.sql b/数据库脚本/查询.sql new file mode 100644 index 0000000..1f6cc02 --- /dev/null +++ b/数据库脚本/查询.sql @@ -0,0 +1,63 @@ +--比较条件 +----1.查询所有性别为“女”的用户信息 +SELECT * FROM user WHERE sex = '女'; +----2.查询所有清洗费用大于80的订单 +SELECT * FROM order WHERE cost > 80; +----3.查询所有洗衣机状态为“空闲”的洗衣机 +SELECT * FROM wmachine WHERE state = '空闲'; +----4.查询所有衣物数量为1的衣物记录 +SELECT * FROM cloth WHERE quantity = 1; +----5.查询所有用户的手机号码,并排除邮箱为“aaaaa@abc.com”的用户 +SELECT name, phoneNumber FROM user WHERE email <> 'aaaaa@abc.com'; + +--集合比较 +----1.查询所有评价类型为“四星”或“五星”的评价 +SELECT * FROM evaluation WHERE type IN ('四星','五星'); +----2.查询所有衣物类型为“毛衣”或“卫衣”的衣物信息 +SELECT * FROM cloth WHERE clothType IN ('毛衣', '卫衣'); + +--范围比较 +----1.查询所有清洗费用在50到100之间的订单 +SELECT * FROM `order` WHERE cost BETWEEN 50 AND 100; +----2.查询所有预约申请日期在2024年9月1日之后的预约 +SELECT * FROM reservation WHERE applicationTime > '2024-09-01'; +----3.查询最新的公告信息 +SELECT * FROM announcement ORDER BY addTime DESC LIMIT 1; + +--字符串相似比较 +----1.查询所有用户名中包含“李”的用户 +SELECT * FROM user WHERE name LIKE '%李%'; +----2.查询所有评价内容以“好评”开头的评价 +SELECT * FROM evaluation WHERE content LIKE '好评%'; +----3.查询所有评价内容包含“好”的评价 +SELECT * FROM evaluation WHERE content LIKE '%好%'; + +--多表连接 +----1.查询所有预约及其对应用户的邮箱和申请日期 +SELECT r.reservationID, u.email, r.applicationTime +FROM reservation r +JOIN user u ON r.userID = u.userID; +----2.查询所有订单及其对应用户的姓名和手机号 +SELECT o.orderID, u.name, u.phoneNumber +FROM `order` o +JOIN user u ON o.userID = u.userID; +----3.查询所有订单及其对应的日志 +SELECT + o.orderID, o.addTime AS orderAddTime, o.cost, l.logID, l.addTime AS logAddTime, l.state AS logState +FROM `order` o +JOIN log l ON o.orderID = l.orderID; +--嵌套查询 +----1.查询所有清洗费用高于平均费用的订单 +SELECT * FROM `order` +WHERE cost > (SELECT AVG(cost) FROM order); +----2.查询所有有超过1条评价的用户信息 +SELECT * FROM user +WHERE userID IN (SELECT userID FROM evaluation GROUP BY userID HAVING COUNT(*) > 1); + +--EXISTS查询 +----1.查询所有有评价的用户 +SELECT * FROM user u +WHERE EXISTS (SELECT 1 FROM evaluation e WHERE e.userID = u.userID); +----2.查询所有有未审核预约的用户 +SELECT * FROM user u +WHERE EXISTS (SELECT 1 FROM reservation r WHERE r.userID = u.userID AND r.examine = '否'); \ No newline at end of file