##Mysql数据库DQL查询工具的使用
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了##Mysql数据库DQL查询工具的使用,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含7022字,纯文字阅读大概需要11分钟。
内容图文
![##Mysql数据库DQL查询工具的使用](/upload/InfoBanner/zyjiaocheng/910/88b4a816e16740c1b8a8343e3f0ca546.jpg)
在开始进行查询工具的学习之前我们需要做一些准备工作,也把我们之前的只是稳固下:
1,新建数据库day03
语法:CREATE DATABASE 数据库名;
2,展示数据库
语法:SHOW DATABASES;
3,展示当前新建数据库
语法:SHOW CREATE DATABASE 数据库名;
4,查询数据库
语法:SELECT DATABASE();
5,换库
语法:USE 数据库名;
CREATE DATABASE day03; #展示数据库 SHOW DATABASES; #展示当前数据库 SHOW CREATE DATABASE day03; #删除数据库 DROP DATABASE day03; #查询数据库 SELECT DATABASE(); #换库 USE day03;
6,新建数据表product(商品)
语法:CREATE TABLE product();
7,添加数据:
语法:INSERT INTO product(pid,pname,price,category_id)VALUES();
8,查询表结构
语法:DESC product;
#新建数据表product CREATE TABLE product( #商品序号 pid INT PRIMARY KEY, #商品名称 pname VARCHAR(20), #商品价格 price DOUBLE, #商品分类 category_id VARCHAR(60) ); #查询表结构 DESC product; #添加数据 INSERT INTO product(pid,pname,price,category_id)VALUES(1,'劲霸男装',1314,'服装'), (2,'红蜻蜓皮鞋',320,'服装'), (3,'鳄鱼鞋业',2313,'服装'), (4,'香奈儿',521,'化妆品'), (5,'防晒喷剂',34,'化妆品'), (6,'曼秀雷敦',220,'化妆品'), (7,'干红',342,'饮品'), (8,'五粮液',120,'饮品'), (9,'醇啤酒',4,'饮品'), (10,'叶麦片',45,'谷物'), (11,'小米加面',4,'谷物'), (12,'红豆',10,'谷物'), (13,'黑厚学',20,'书籍'), (14,'儿诗三百首',15,'书籍'), (15,'童话大全',35,'书籍'), (16,'华为P30',4999,'手机'), (17,'苹果P8s',7800,'手机'), (18,'三星A8s',3299,'手机'), (19,'健身跑步机',12000,'健身'), (20,'杠铃',45,NULL); #如果我已经添加完数据,但是我又想添加 INSERT INTO product(pid,pname,price,category_id)VALUES(21,'泳镜',67,'健身'); #查询表数据 SELECT*FROM product;
到这一步的时候,我们现在基本上准备工作就做好了,下面我们开始查询
一:简单查询:
1,1查询多字段的表
语法:SELECT 字段名,字段名FROM 表名;
1,2查询所有商品的列表
语法:SELECT 字段名,字段名,字段名,字段名 FROM 表名; 此方法不推荐使用:效率低
SELECT *FROM product;
1,3查询商品价格并过滤重复 关键字:Distinct
语法:Select Distinct 字段名 From 表名;
Select Distinct 字段名,字段名。 From 表名;
1.4g给表起别名
语法:Select * From 表名 AS 名字;(AS可以省略不写)
1.5给字段起别名
语法:Select 字段名 新名字,字段名 新名字 From 表名;(如果新名字you空格记得要用单引号或者双引号引起来)
1.6进行数据运算
语法:Select(运算);
1.7查询进行运算之后的数据表
语法:Select 字段名,字段名+1000 From 表名;
#查询商品的价格和商品名 SELECT pname,price FROM product; #查询商品表所有列的信息 SELECT pid,pname,price,category_id FROM product; SELECT *FROM product; #查询商品价格列,过滤重复的部分 SELECT price FROM product; SELECT DISTINCT price FROM product; SELECT DISTINCT pid,pname,price,category_id FROM product; #给表起别名 SELECT *FROM product AS p; SELECT *FROM product p; #给字段起别名 SELECT pname 商品名称,price 商品价格 FROM product; SELECT pname 商品名称,price '商品价格 涨价' FROM product; #查询语句中可以直接进行数据运算 SELECT(2*23); #查询商品名称和商品价格涨价后的价格 SELECT pname,price+1000 FROM product;
二:条件查询
2,1比较运算符
基本运算符 < > <= >= <>(不等于) !=
表示查询区间 between and >=&&<=
表示多个条件 in(。。。) 例子:in(10,20) 10||20
表示空的 is null
#查询数据库表 SELECT *FROM product; #商品名称为香奈儿的商品信息 SELECT *FROM product WHERE pname='香奈儿'; #查询价格为12000的商品 SELECT *FROM product WHERE price=12000; #查询商品价格不为12000的商品 SELECT *FROM product WHERE price<>12000; SELECT * FROM product WHERE price !=12000; #查询商品价格大于200的商品 SELECT *FROM product WHERE price>200; #查询价格再10-500之间的商品 SELECT * FROM product WHERE price BETWEEN 10 AND 500; SELECT *FROM product WHERE price>=10 AND price<=1000; SELECT *FROM product WHERE price>5&&price<=50; #查询价格是10或者45的商品 SELECT *FROM product WHERE price IN(10,45); SELECT *FROM product WHERE price=10 OR price=45;
2,2模糊查询 使用关键字:like
多个任意字符%
一个任意字符_
#查询商品名称以鳄鱼开头的商品 SELECT *FROM product WHERE pname LIKE '%鱼%'; SELECT *FROM product WHERE pname LIKE'__'; SELECT *FROM product WHERE pname LIKE'____';
2,3逻辑运算符
与 and &&
或 or ||
非 ! not
#商品没有分类的商品 SELECT *FROM product WHERE category_id IS NULL; SELECT *FROM product WHERE category_id IS NOT NULL; SELECT *FROM product WHERE NOT(category_id IS NULL);
三:聚合查询:
3,1查询的结果是进行排序 ASC是升序 DESC是降序
语法:select *from 表名 order by 字段名 排序方法;
3,2显示价格 去掉重复的价格 降序
语法:SELECT DISTINCT 字段名FROM 表明ORDER BY 字段名 ASC;
SELECT DISTINCT 字段名FROM 表明ORDER BY 字段名 DESC;
3,3再分类的降序
语法:SELECT *FROM 表名ORDER BY 字段名 DESC;
3.4对某列的数据进行查询 结果是一个单一的直,会忽略null的直
3.5count统计指定列不为null行数
3.6sum指定列的数值和,如果指定的列不是数值类型,结果为0
3.7max指定列的最大直, 如果指定的列是字符串类型,那么结果为采用字符串运算
3.8min 小
3.9avg 平均值,如果指定的列不是数值类型, 那么计算结果为0
/* 查询的结果是进行排序 ASC是升序 DESC是降序 语法:select *from 表名 order by 字段名 排序方法; */ SELECT *FROM product ORDER BY price ASC; SELECT *FROM product ORDER BY price; SELECT *FROM product ORDER BY price DESC; #显示价格 去掉重复的价格 降序 SELECT DISTINCT price FROM product ORDER BY price ASC; SELECT DISTINCT price FROM product ORDER BY price DESC; SELECT *FROM product; #再分类的降序 SELECT *FROM product ORDER BY category_id DESC; #查询商品总条数 SELECT COUNT(*)FROM product; SELECT COUNT(pid)FROM product; SELECT COUNT(pname)FROM product; SELECT COUNT(price)FROM product; SELECT COUNT(category_id)FROM product; #查询价格大于50元的商品总数 SELECT COUNT(*)FROM product WHERE price>50; #查询商品的总价格 SELECT SUM(price)FROM product; #查询分类为服装的所有商品价格之和 SELECT SUM(price)FROM product WHERE category_id='服装'; #查询商品的平均值 SELECT AVG(price)FROM product; SELECT AVG(price)FROM product WHERE category_id='化妆品'; #查询商品价格中最大的价格和最小的价格 SELECT MAX(price),MIN(price)FROM product; SELECT MAX(price),MIN(price)FROM product WHERE category_id="饮品"; SELECT *FROM product; #sum avg如果指定的类型不是数值类型那么计算结果为0 SELECT SUM(pname)FROM product; SELECT AVG(pid)FROM product;
四:分组查询 重重之重 关键字:Group By Having
含义:select被分组的字段,求和,平均值,个数,最大,最小。from表名[where条件]grop by 被分组的字段
4,1按商品的类别进行分组,统计哥分类商品的个数
语法:SELECT 字段名,COUNT(*)FROM 表名GROUP BY 字段名;
4,2按商品的类别进行分组,统计各个分类商品的平均价格
语法:SELECT 字段名,AVG(字段名)FROM 表名GROUP BY 字段名;
4,3先按商品的类别分组,统计各个分组商品的个数,只查询每组商品大于200的商品
语法:SELECT 字段名,COUNT(字段名)FROM 表名WHERE 字段名>200 GROUP BY 字段名;
4,4先按商品的类别分组,统计各个分组商品的个数,只显示统计个数等于三的信息
语法:SELECT 字段名,COUNT(*)FROM 表名GROUP BY 字段名HAVING COUNT(*)=3;
#按商品的类别进行分组,统计哥分类商品的个数 SELECT category_id,COUNT(*)FROM product GROUP BY category_id; #按商品的类别进行分组,统计各个分类商品的平均价格 SELECT category_id,AVG(price)FROM product GROUP BY category_id; #where用于分组钱进行条件guolv #having用于分组后,对分完组的数据进行过滤 #先按商品的类别分组,统计各个分组商品的个数,只查询每组商品大于200的商品 SELECT category_id,COUNT(price)FROM product WHERE price>200 GROUP BY category_id ; #先按商品的类别分组,统计各个分组商品的个数,只显示统计个数等于三的信息 SELECT category_id,COUNT(*)FROM product GROUP BY category_id HAVING COUNT(*)=3;
内容总结
以上是互联网集市为您收集整理的##Mysql数据库DQL查询工具的使用全部内容,希望文章能够帮你解决##Mysql数据库DQL查询工具的使用所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。