Mysql的查询语句的使用
1. 简单查询
查询所有字段: SELECT * FROM 表名
查询特定字段: SELECT 字段列表 FROM 表名
2. 查询显示行号
- 在字段列表中加入(@rownum := @rownum + 1) AS rownum
- 在FROM子句中加入 (select @rownum:=0)r
- 示例如下:
select (@rownum := @rownum + 1) AS rownum,book_name from (select @rownum:=0)r, book;
查询结果:
+--------+--------------------+
| rownum | book_name |
+--------+--------------------+
| 1 | 数据库系统设计 |
| 2 | 从实模式到保护模式 |
+--------+--------------------+
3. 在查询语句中可以有算术表达式,它将形成一个新列,用于显示计算的结果,通常称为计算列。
实例:select book_price/2 AS new_book_price,author_id from book;
4. 在SELECT子句中使用AS关键字给某个字段起别名
- 基本使用
mysql> select book_price AS New_book_price,author_id as my_idea from book;
+----------------+---------+
| New_book_price | my_idea |
+----------------+---------+
| 214 | 1 |
| 34.5 | 2 |
+----------------+---------+
2 rows in set (0.07 sec)
- 别名中如果出现空格或者()之类的敏感字符,需要使用双引号将别名引起
mysql> select book_name as "the new book name" from book;
+--------------------+
| the new book name |
+--------------------+
| 数据库系统设计 |
| 从实模式到保护模式 |
+--------------------+
2 rows in set (0.06 sec)
mysql> select book_name as the new book name from book;
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'new book name from book' at line 1
5. 使用DISTINCT消除重复行显示
mysql> select volume FROM book;
+--------+
| volume |
+--------+
| 45 |
| 45 |
+--------+
2 rows in set (0.07 sec)
mysql> select DISTINCT volume FROM book;
+--------+
| volume |
+--------+
| 45 |
+--------+
1 row in set (0.06 sec)
6. 查询结果的排序,order by 字段 (asc,desc),asc表示升序,desc表示降序,如果不指明的话,就会默认使用升序
mysql> SELECT * FROM author ORDER BY id;
+----+--------------+---------+
| id | name | address |
+----+--------------+---------+
| 1 | chenchen | |
| 2 | chenqingyang | |
| 5 | 666 | 广州市 |
| 14 | gafv | gfgd |
+----+--------------+---------+
4 rows in set (0.05 sec)
mysql> select * from author order by id desc;
+----+--------------+---------+
| id | name | address |
+----+--------------+---------+
| 14 | gafv | gfgd |
| 5 | 666 | 广州市 |
| 2 | chenqingyang | |
| 1 | chenchen | |
+----+--------------+---------+
4 rows in set (0.05 sec)
7. 需要注意的是,在order by子句中,如果该字段是字符类型的话,那将使用字符表的顺序来进行比较
mysql> select * from author order by name ;
+----+--------------+---------+
| id | name | address |
+----+--------------+---------+
| 1 | chenchen | |
| 2 | chenqingyang | |
| 14 | gafv | gfgd |
+----+--------------+---------+
3 rows in set (0.05 sec)
8. 索引的创建与删除
- 创建: CREATE INDEX 索引名 on table_name(字段名)
- 删除: DROP INDEX 索引名 on table_name
创建代码:
mysql> create index name_index on author(name);
Query OK, 0 rows affected (0.05 sec)
Records: 0 Duplicates: 0 Warnings: 0
删除代码:
mysql> DROP index name_index on author;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
> 本文由博客一文多发平台 [OpenWrite](https://openwrite.cn?from=article_bottom) 发布!
Mysql的查询语句的使用的更多相关文章
- 23个MySQL常用查询语句
23个MySQL常用查询语句 一查询数值型数据: SELECT * FROM tb_name WHERE sum > 100; 查询谓词:>,=,<,<>,!=,!> ...
- MySQL 表查询语句练习题
MySQL 表查询语句练习题: 一. 设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表 ...
- MYSQL——解题查询语句答题思路,再难的查询都不怕!
select查询语句,作为测试人员,使用此语句是家常便饭,是必须掌握的部分,由开始学习mysql到网上搜索试题做,开始做题一塌糊涂,拿到题目就晕,无从下手,现在慢慢总结了一套自己做题的方式,很开森,嘿 ...
- mysql—常用查询语句总结
关于MySQL常用的查询语句 一查询数值型数据: ; 查询谓词:>,=,<,<>,!=,!>,!<,=>,=< 二查询字符串 SELECT * FROM ...
- MySQL慢查询语句的定位
使用以下语句可以查询相关的配置和日志所在位置: show variables like '%slow%'; 名词解释: log_slow_admin_statements: 打开后可以将一些比较慢的管 ...
- Mysql的查询语句(联合查询、连接查询、子查询等)
Mysql的各个查询语句(联合查询.连接查询.子查询等) 一.联合查询 关键字:union 语法形式 select语句1 union[union选项] select 语句2 union[union选项 ...
- mysql命令查询语句&MTdata
1.单表查询 select * from student; 采用*效率低,不推荐,多用列名 一.单表查询的语法: SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY ...
- mysql中查询语句中的一个知识点说明
1, 简单说明. select * from tb_name where 1[不为零即可];则会显示所有记录,select * from tb_name where 0;则不显示任何记录 假设数据库中 ...
- MySQL简单查询语句练习
数据查询语法(DQL) DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端. 语法: SELECT selection_list /*要查询的列名称*/ F ...
随机推荐
- HttpClient 上传文件
/// <summary> /// 发送post请求 /// </summary> /// <param name="filePath">文件路 ...
- Java自学基础、进阶、项目实战网站推荐
推荐一个自学的好平台,有Java基础,前端,后端,基础的内容都有讲解,还有框架的讲解和实战项目,特别适合自学 JAVA 自学网站 JAVA 练习题 Spring 教程 Mybatis 教程 Sprin ...
- 云服务器linux系统修改时间和时区
申请的云服务器时间不对,用同步网络时间的命令执行后依然有问题. 解决办法: # tzselect [root@ylyuat2-web02 logs]# TZ='Asia/Shanghai'[root@ ...
- JavaScript 弹出框:警告(alert)、确认(confirm)的简单写法
onclick="javascript:return window.confirm('message')"
- 关于Prometheus监控的思考:多标签埋点及Mbean
使用 grafana+prometheus+jmx 作为普通的监控手段,是比较有用的.我之前的文章介绍了相应的实现办法. 但是,按照之前的实现,我们更多的只能是监控 单值型的数据,如请求量,tps 等 ...
- nyoj 16-矩形嵌套(贪心 + 动态规划DP)
16-矩形嵌套 内存限制:64MB 时间限制:3000ms Special Judge: No accepted:13 submit:28 题目描述: 有n个矩形,每个矩形可以用a,b来描述,表示长和 ...
- bash6——循环
for fruit in apple orange pear #写死 do each ${fruit}s done fruits="apple orange pear" #输入变量 ...
- C# Json之序列化与反序列化
前言:在实际开发过程中经常都要和Json打交道,序列化与反序列化就成了开发中必不可缺的技能.本篇博客就教大家如何进行Json序列化与反序列化. 首先要添加引用NuGet包,Newtonsoft.Jso ...
- ubuntu 16.04安装并启动openssh
对于没有图形界面的linux系统,一般都会用到远程连接控制,,因此新安装的linux系统,在配好网络后,首先要安装的就是远程连接工具,ssh是常用的方法. ps -ef |grep ssh //查看 ...
- 爬虫json文件存储形式
json的表现形式和python中的字典是没有很大区别的,唯一的区别是dict的键是可hash对象,而json只能是字符串. 对于json的操作可以分为两类 一是对字符串的操作: 当需要将python ...