MySQL:数据查询语言DQL,查询语法及实例

SQL语言SQL(Structured Query Language)的含义是结构化查询语言.SQL 是用于访问和处理数据库的标准的计算机语言。

SQL语言

SQL(Structured Query Language)的含义是结构化查询语言.SQL 是用于访问和处理数据库的标准的计算机语言。

SQL有多种不同的标准,常见有SQL89,SQL92与SQL99标准.

▲ SQL分类

MySQL:数据查询语言DQL,查询语法及实例

DQL

数据查询语言.

从数据库表中检索数据.

select命令

select语句

● 自然语句: 句子成分 主谓宾 定状补

● select语句: 由若干个子句构成,每一个子句由一个关键字引导

1.select语句组成

一般select语句包含6大子句.

MySQL:数据查询语言DQL,查询语法及实例

语法:

select list
from tabs
where search_condition
group by grouping_columns
having search_condition
order by sort_columns;

#执行顺序
from(join) --> where --> group by --> having --> select --> order by

2.简单查询

语法:

select list
from tab_name
order by sort_columns;

▲ 查看表结构

语法:

desc tab_name #DESCRIBE
describe tab_name
mysql> desc ecs_goods_type;
+----------+--------------------+----+---+-------+--------------+
| Field | Type |Null|Key|Default| Extra |
+----------+--------------------+----+---+-------+--------------+
| cat_id |smallint(5) unsigned| NO |PRI| NULL |auto_increment|
| cat_name |varchar(60) | NO | | | |
| enabled |tinyint(1) unsigned | NO | | 1 | |
|attr_group|varchar(255) | NO | | | |
+----------+--------------------+----+---+-------+--------------+
4 rows in set (0.03 sec)

▲ MySQL数据类型

MySQL:数据查询语言DQL,查询语法及实例

#列出所有品牌信息(查询需求)#思路1.确定表可以查看数据的设计文档(数据字典);问开发,问DBAecs_brand2.确定列可以通过查看表结构来熟悉表.SELECT brand_name FROM ecs_brand; #查询单列SELECT brand_id,brand_name FROM ecs_brand; #查询多列SELECT * FROM ecs_brand; #查询所有列

▲ 书写SQL语句注意事项

不区分大小写

关键字与[非]关键字之间用空格或换行符分隔

多个列之间用,分隔

*代表所有的列

;表示SQL语句结束

注释使用 # 单行注释 /*内容*/ 多行注释

单独选中命令执行

▲ 怎样去掉重复的记录或行

语法:

select distinct list from tab_name ...
#找出商品表中有哪些商品类型
SELECT * FROM ecs_goods;
SELECT DISTINCT goods_type FROM ecs_goods;

▲ 排序

是由order by子句来实现的.

排序方式:

● 按列名

select ...,col_name,...
from tab_name
order by col_name;
#按照商品市场价格排序
SELECT goods_id,goods_type,goods_name,market_price
FROM ecs_goods
ORDER BY market_price;

● 列序号

select c1,c2,...,cn
# 1 2 ... n
from tab_name
order by i;
#按照商品名称排序
SELECT goods_id,goods_type,goods_name,market_price
FROM ecs_goods
ORDER BY 3;

● 列别名

select ...,col_name alias_name,...
from tab_name;
select ...,col_name as alias_name,...
from tab_name;
SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格
FROM ecs_goods
ORDER BY 商品编号;

● 按列别名

select ...,col_name alias_name,...
from tab_name
order by alias_name;
#安装商品编号别名排序
SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格
FROM ecs_goods
ORDER BY 商品编号;

● 升序与降序

select list
from tab_name
order by col_name [asc] #默认升序 asc可选
order by col_name desc #降序排序 desc必选
#按照商品市场价格降序排序
SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格
FROM ecs_goods
ORDER BY market_price DESC;

● 多列排序

select list
from tab_name
order by c1,c2,...,cn;
#按照商品类型升序,市场价格降序排序
SELECT goods_id AS 商品编号, goods_type 商品类型, goods_name 商品名称, market_price 市场价格
FROM ecs_goods
ORDER BY goods_type,market_price DESC;

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/5961.html

(0)
上一篇 2022-12-14 16:34
下一篇 2022-12-14 16:34

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信