初,中级SQL

趁项目在联调,加深一下SQL技能,下面是举例子,没有关注SQL性能问题,请同学们勿放进生产环境!

项目需求1:查询商品价格2000 - 5000 的商品, 平常写SQL是这样写的:

  1. SELECT * FROM 表名 WHERE 价格 >= 2000 AND 价格 <= 5000;
  2. 这条SQL,查询出数据是没有任何问题的,不过还有另外一种写法
  3. SELECT * FROM 表名 WHERE 价格 BETWEEN 2000 AND 5000;

子查询:
注意点: 子查询一般会影响性能,写子查询的时候,可以加上explain关键字,用来查看查询类型,查询时使用的索引以及其它等等信息.子查询分好几种,有的子查询之间互不影响,拿出来可以单独运行,有些则是需要依赖另外的查询.

  1. select * from deer_commodity a where a.id =(select b.commodity_id from deer_commodity_product b where b.commodity_id= 88) – 查询商品表,和规格表格中id匹配的数据,记住,数据不能查询多条,否则会报:Subquery returns more than 1 row

暂时写这,忙项目去了…

发布了72 篇原创文章 · 获赞 16 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_40206199/article/details/88852293
今日推荐