例如我们需要查询商品表中每个分类中商品id最大的记录,并且显示商品价格
以下是表结构:
id catename title price 1 手机 小米5 1500 2 手机 小米6 2500 3 手机 苹果6 2450 4 电脑 三星c201 5000 5 电脑 戴尔n4050 2000 6 充电宝 小米充电宝 89 7 充电宝 罗马仕 110 8 充电宝 熊大大X能源 250
执行SQL:
select max(id) ,catename,price from shop_goods group by catename
我们会发现执行的结果如下
id 分类 价格 8 充电宝 89 3 手机 1500 5 电脑 5000
价格错误,其他都是正确的。
正确的SQL执行:
SELECT id,catename,price from shop_goods where id in(select max(id) from shop_goods group by catename )
正确的SQL执行结果:
id 分类 价格 3 手机 2450 5 电脑 2000 8 充电宝 250
1.很多人认为count查询非常快,但是在加上筛选条件那就是未必的了!测试:user表中4000w数据(1).SELECT count(*) from user; 用时0.00s (2).SELECT...
概述: 目前我们的表设计,最高级别的范式是6NF,对于PHP程序员而言,我们的表满足3NF即可(范式即规范)【一】1NF (1).所谓1NF,就是指标的属性具有原子性,即表的列不能再分割,不能分割意思是字段本身的含义(例如address字段不能再分割)...
海量表,数据量较大,并且每个字段的值具有唯一性。如果你创建的海量表只是数据多,索引是毫无意义的。构建海量时我们要使用存储过程。学习自韩顺平(1).创建一个测试数据库create database testdb;set names gbk;use testdb(2).创建dep...
1.查看歌曲表结构(主要是给name字段添加全文索引)(mysql5.7才支持全中文索引)desc music; +---------+-------------+------+-----+---------+----------------+ | Fie...
(1).查询某个字段是否包含某个字符串,可以直接使用likeSELECT oid,oname from zhongxing_options where oname li...
(1).查询至少有2条订单的客户:SELECT cust_id, COUNT( * ) AS orders FROM orders GROUP BY cust_id HAVING orders ...