SQL专项练习6

关系运算符

σ 选取 相当于SQL中的 where rating > 8

π 投影 相当于SQL中的 select ... distinct 字段 ,去重

x 叉乘 相当于SQL中的 ...from A,B : 穷举所以集合两边元素的组合量

- 差 返回所有在 R 中但不在 S 中的元组

U 并 返回包含在R或S中的所有元组

exists子查询:多列多值嵌套查询

把外层的查询结果拿到内层,看内层是否成立,简单来说后面的返回true,外层(也就是前面的语句)才会执行,否则不执行

结果:

SELECT DISTINCT customer_id
FROM orders
WHERE EXISTS (
  SELECT *
  FROM products
  WHERE orders.product_id = products.product_id
    AND products.product_name = '产品A'
);

在上面的查询中,首先在orders表中查询具有购买产品A的订单的客户ID。

子查询会检查orders表中的每一行,然后在products表中查找具有匹配产品ID和产品名称的记录。
如果找到匹配的记录,EXISTS返回TRUE,否则返回FALSE。最终,查询结果将返回购买产品A的客户ID。

注意!
使用EXISTS子查询时,子查询与主查询之间必须有关联条件,以确保正确地检查记录的存在。在上面的示例中,我们使用了orders表的product_id和products表的product_id进行了关联。

in子查询:单列多值嵌套查询

  select * from class
  where name in (select name from hobby)
  父查询中使用IN

集合查询

UNION、EXCEPT、INTERSECT

集合运算符实现两个表之间的数据查询

sum() 对于null不做累加

SQL专项练习 文章被收录于专栏

SQL专项每日练习,错题

全部评论

相关推荐

迷茫的大四🐶:你这个拿去投央国企吧,投私企包过不了的
点赞 评论 收藏
分享
赛博小保安:你这简历没啥大问题的,经历技能也足够了,问题应该就是出在出身了,学院本就是这样,HR忙着跟92的勾搭呢,哪有心思看我们这些双非😿😭
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务