Loading

数据库之MySQL——基本常用查询命令

目录

 

MySQL数据库常用基础命令

一、基础查询命令语法

练习:

二、给查询的结果集 起别名

三、去重查询操作

四、MySQL中“+”号运算符

这些是我学习中比较常用的基础命令和理解,欢迎初学者一起学习讨论。


MySQL数据库常用基础命令

前述:学习,需要打好坚实的基础,具有扎实的基础才能循序渐进,学好之后的其他命令。(加油吧!!学习大军)

一、基础查询命令语法

SELECT 查询列表 FROM 表名

特点:

1、查询列表可以是 表中的字段、常量值、表达式、函数

2、查询到的结果集是虚拟的一张表(在数据库中不存在的一张表)

练习:

#首先创建一个新的数据库
CREATE DATABASE IF NOT EXISTS test;
#进入创建好的数据库
USE test;
#创建新表
CREATE TABLE IF NOT EXISTS test_tb(id int(5),name varchar(10));
#插入几条数据(插入数据命令后期会讲到)
INSERT INTO test_tb VALUES(1,"K"),(2,"J"),(3,"L");

#在MySQL中 关键字均以大写形式规范
#查询语法
#SELECT 查询列表 FROM 表名

#查询单个字段
mysql> SELECT id FROM test_tb;
+----+
| id |
+----+
|  1 |
|  2 |
|  3 |
|  4 |
+----+
4 rows in set (0.04 sec)
#查询多个字段

mysql> SELECT id,name FROM test_tb;
+----+------+
| id | name |
+----+------+
|  1 | K    |
|  2 | J    |
|  3 | L    |
|  4 | h    |
+----+------+
4 rows in set (0.03 sec)


#查询全部字段
#方式一
    mysql> SELECT * FROM test_tb;
+----+------+
| id | name |
+----+------+
|  1 | K    |
|  2 | J    |
|  3 | L    |
|  4 | h    |
+----+------+
4 rows in set (0.03 sec)

#方式二
    mysql> SELECT id,name FROM test_tb;
+----+------+
| id | name |
+----+------+
|  1 | K    |
|  2 | J    |
|  3 | L    |
|  4 | h    |
+----+------+
4 rows in set (0.03 sec)

#查询常量值
mysql> SELECT 100;
+-----+
| 100 |
+-----+
| 100 |
+-----+
1 row in set (0.03 sec)

mysql> SELECT "string";
+--------+
| string |
+--------+
| string |
+--------+
1 row in set (0.03 sec)

#查询表达式

mysql> SELECT 100+2;
+-------+
| 100+2 |
+-------+
|   102 |
+-------+
1 row in set (0.03 sec)

mysql> SELECT 100-2;
+-------+
| 100-2 |
+-------+
|    98 |
+-------+
1 row in set (0.03 sec)

mysql> SELECT 100*2;
+-------+
| 100*2 |
+-------+
|   200 |
+-------+
1 row in set (0.03 sec)


mysql> SELECT 100/2;
+---------+
| 100/2   |
+---------+
| 50.0000 |
+---------+
1 row in set (0.03 sec)

#查询函数
mysql> SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 5.7.33    |
+-----------+
1 row in set (0.03 sec)

案例:查询test_tb表中所有的id

SELECT id FROM test_tb;

二、给查询的结果集 起别名

别名:顾名思义,是另外起一个名称,因为查询的结果集是一个虚拟的表,因此是没有名字的只有所查询的表的字段名,所以为了方便查看和理解,我们要学会给表起别名。

特点 

①便于理解
②如果要查询的字段有重名的情况,使用别名可以区分开来

#起别名:

#方式一:使用AS
    SELECT 100*2 AS 结果;

    mysql> SELECT 100*2 AS 结果;
    +------+
    | 结果 |
    +------+
    |  200 |
    +------+
    1 row in set (0.04 sec)

    SELECT id AS id号 FROM test_tb;

    mysql> SELECT id AS id号 FROM test_tb;
    +------+
    | id号 |
    +------+
    |    1 |
    |    2 |
    |    3 |
    |    4 |
    +------+
    4 rows in set (0.03 sec)
#方式二:使用空格
    SELECT 100*2 结果;

    mysql> SELECT 100*2 结果;
    +------+
    | 结果 |
    +------+
    |  200 |
    +------+
    1 row in set (0.04 sec)

    SELECT id id号 FROM test_tb;

    mysql> SELECT id id号 FROM test_tb;
    +------+
    | id号 |
    +------+
    |    1 |
    |    2 |
    |    3 |
    |    4 |
    +------+
    4 rows in set (0.04 sec)
#案例: 查询test_tb表 name字段  起别名为 out put
mysql> mysql> SELECT name out put FROM test_tb;
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 'mysql> SELECT name out put FROM test_tb' at line 1
#直接使用报错

mysql> SELECT name "out put" FROM test_tb;
+---------+
| out put |
+---------+
| K       |
| J       |
| L       |
| h       |
+---------+
4 rows in set (0.03 sec)

#由于起的别名中有空格,MySQL不能直接识别,所以需要把含有空格的用双引号引住。

三、去重查询操作

去重操作是为了防止不必要的重复而设置的。

#先在我们要查询的表中添加几行id相同的数据
mysql> INSERT INTO test_tb VALUES(1,"A"),(4,"q"),(4,"w");
Query OK, 3 rows affected (0.13 sec)
Records: 3  Duplicates: 0  Warnings: 0
#添加数据成功

#先查询一下表中的全部数据
mysql> SELECT * FROM test_tb;
+----+------+
| id | name |
+----+------+
|  1 | K    |
|  2 | J    |
|  3 | L    |
|  4 | h    |
|  1 | A    |
|  4 | q    |
|  4 | w    |
+----+------+
7 rows in set (0.03 sec)

#一共有七条数据

mysql> SELECT id FROM test_tb;
+----+
| id |
+----+
|  1 |
|  2 |
|  3 |
|  4 |
|  1 |
|  4 |
|  4 |
+----+
7 rows in set (0.03 sec)

#去重查询(DISTINCT)
mysql> SELECT DISTINCT id FROM test_tb;
+----+
| id |
+----+
|  1 |
|  2 |
|  3 |
|  4 |
+----+
4 rows in set (0.03 sec)

四、MySQL中“+”号运算符

#mysql中的+号:
#只有一个功能:就是作运算符
#两个查询值都是数值型,则做加法运算
mysql> SELECT 100+90;
+--------+
| 100+90 |
+--------+
|    190 |
+--------+
1 row in set (0.03 sec)

#只要其中一方为字符型,试图将字符型数值转换成数值型,如果转换成功,则继续做加法运算
mysql> select '100'+90;
+----------+
| '100'+90 |
+----------+
|      190 |
+----------+
1 row in set (0.03 sec)

#如果转换失败,则将字符型数值转换成0
mysql> SELECT 'k'+100;
+---------+
| 'k'+100 |
+---------+
|     100 |
+---------+
1 row in set (0.03 sec)

#只要其中一方为null,则结果肯定为null
mysql> SELECT null+100;
+----------+
| null+100 |
+----------+
| NULL     |
+----------+
1 row in set (0.03 sec)

#MySQL中的连结运算是CONCAT
#案例查询id,name并连接结;
mysql> SELECT CONCAT(id,name) AS 连结 FROM test_tb;
+------+
| 连结 |
+------+
| 1K   |
| 2J   |
| 3L   |
| 4h   |
| 1A   |
| 4q   |
| 4w   |
+------+
7 rows in set (0.04 sec)

最后附上实验中使用的sql数据,如果想要练习,可以直接拿去

链接: https://pan.baidu.com/s/1YkJMvhI17RE0pln8wQx5Ag 提取码: evfg 

这些是我学习中比较常用的基础命令和理解,欢迎初学者一起学习讨论。

posted @ 2022-08-13 10:38  knsec  阅读(830)  评论(0编辑  收藏  举报