43.MySQL数据库基本操作——增删改查

目录

一:数据库简介

1.SQL的分类:

2.数据库的数据类型:

(1)数值类型:

(2)字符串类型:

(3)日期和时间类型:

二:MySQL数据库的安装与配置:

(1)MySQL官方下载地址:http://dev.mysql.com/downloads/mysql

(2)卸载mariadb

(3)rpm安装MySQL:

(4)登录数据库:

三:数据库,数据表的基本操作:

1:数据库的基本操作:

(1)查询所有的数据库:show databases;

(2)创建数据库:create database 数据库名字;

(3)创建数据库后查看该数据库基本信息:show create database 数据库名字;

(4)使用数据库:use 数据库名字;

(5)删除数据库:drop database 数据库名字;

四:数据库中的数据表的基本操作:

(一):数据库中的数据表的基本操作(增):

(1)创建数据表:create table 数据表名(字段 字段类型);

(2)查看当前数据库中所有的数据表:show tables;

(3)查看表的详细信息:show create table 数据表名;

(4)查看表的字段信息:desc 数据表名:

(5)数据表查询语句:select +关键字后指定要显示的内容 from 数据表名;

        查看数据表中所有的内容:select * from 数据表名;

(6)为数据表中所有的字段插入数据:insert into 数据表名 (字段名1,字段名2,...) values (值1,值2,...)

(7)为数据表中指定字段插入数据:insert into 数据表名 (字段) values (值);

(8)同时插入多条数据:insert into 数据表名 (字段1,字段2,...) values (值1,值2,...),(值1,值2,...),...;

(二):数据库中的数据表的基本操作(改 值):

(1)更新部分数据(也可称之为更改数据表中的数据):update 数据表名 set 字段名1=值1 where 条件表达式

(2)update更新全部数据: update 数据表名 set 字段名=值;

(三):数据库中的数据表的基本操作(删除 值):

(1)删除指定数据:delete from 表名 where 条件;

(2)删除数据表中所有的数据:delete from 数据表名;

(四):数据库中的数据表的基本操作(改 表):

(1)修改表名:alter table 数据表名 rename to 新表名;

(五):数据库中的数据表的基本操作(改 字段):

(1)修改字段数据类型:alter table 数据表名 modify 字段名 新数据类型(长度);

(2)修改字段名:alter table 数据表名 change 旧字段名 新字段名 数据类型(长度);

(3)增加字段:alter table 数据表名 add 增加的字段名 类型(长度);

(六):数据库中的数据表的基本操作(删除 字段):

(1)删除字段:alter table 表名 drop 字段名;

(2)删除数据表:drop table 表名;

(七):数据库中的数据表的基本操作(查 字段):

(1)查询所有的字段:desc 表名;

(八):数据库中的数据表的基本操作(查 字段对应的value值):

(1)查询所有的字段对应的值:select * from 表名;

(2)查询指定的字段:select 指定字段 from 表名;

(3)常数的查询:在select中除了书写列名,还可以书写常数,用于标记:select * ,'年*月*日' from 表名;

(4)从查询结果中过滤重复数据:select distinct 指定字段 from 表名;



一:数据库简介

1.SQL的分类:

(1)DDL数据定义语言,用来操作数据库,表,列等;常用语句:create,alter,drop

(2)DML数据操作语言,用来操作数据库中表里的数据;常用语句:insert,update,delete

(3)DCL数据控制语言,用来操作访问权限和安全级别;常用语句:grant,deny

(4)DQL数据查询语言,用来查询数据;常用语句:select

2.数据库的数据类型:

(1)数值类型:

根据数值取值范围的不同MySQL中的整数类型可分为5种,分别是tinyint,smallint,mediumint,int,bigint

类型 大小 有符号(signed) 无符号(unsigned) 描述
tinyint 1 byte (-128,127) (0,255) 小整数值
smallint 2 bytes (-32768,32767) (0,65535) 大整数值
mediumint 3 bytes (-8388608,8388607) (0,16777215) 大整数值
int 4 bytes (-2147483648,2147483647) (0,2^64 - 1) 大整数值
bigint 8bytes / / 极大整数值

(2)字符串类型:

在MySQL中常用char和varchar表示字符串。两者不同的是:varchar储存可变长度的字符串。

类型 大小 描述
char 0-255 bytes 定长字符串
varchar 0-65535 bytes 变长字符串
tinytest 0-255 bytes 可变长度(短文本字符串)
text 0-65535 bytes 可变长度(长文本字符串)
mediumtext 0  -   2^24-1 bytes 可变长度(二进制形式的中等长度的文本数据)
longtext 0  -    2^32-1 bytes 可变长度(极大文本数据)

(3)日期和时间类型:

类型 大小 范围 格式 描述
date 3 1000-01-01 至 9999-12-31 YYYY-MMM-DD 日期值
time 3 -838:59:59 至 838:59:59 HH:MM:SS 时间值
year 1 1901 至 2155 YYYY 年份值
datetime 8 1000-01-01 00:00:00 至~ / 混合日期和时间值
timestamp 4 1970-01-01 00:00:00 至2038 / 时间戳

二:MySQL数据库的安装与配置:

(1)MySQL官方下载地址:http://dev.mysql.com/downloads/mysql

43.MySQL数据库基本操作——增删改查_第1张图片

 注意:rpm包安装的时候,虽然安装包下载到了本地,但是在安装的过程中仍然可能会存在一些依赖,因此需要修改网络源来安装。

网易163 yum源:http://mirrors.163.com/.help
搜狐 yum源:http://mirrors.sohu.com
阿里云yum源:http://mirrors.aliyun.com/repo/
清华大学 yum源:http://mirrors.tuna.tsinghua.edu.cn/
浙江大学 yum源:http://mirrors.zju.edu.cn
中国科技大学 yum源:http://centos.ustc.edu.cn

(2)卸载mariadb

rpm -e postfix-2:2.10.1-9.el7.x86_64

rpm -e mariadb-libs-5.5.68-1.el7.x86_64

(3)rpm安装MySQL:

先将压缩包解压到指定目录(/opt/mysqld/)
[root@192 ~]# tar xf mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar -C /opt/mysqld/
[root@192 ~]# cd /opt/mysqld/
[root@192 ~]# yum localinstall *

压缩包:
[root@192 ~]# cd /opt/mysqld/
[root@192 mysqld]# ll
total 839324
-rw-r--r--. 1 7155 31415  14709160 Jul  7 16:00 mysql-community-client-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415   2632376 Jul  7 16:00 mysql-community-client-plugins-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415    660264 Jul  7 16:00 mysql-community-common-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 481580308 Jul  7 16:01 mysql-community-debuginfo-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415   1958588 Jul  7 16:01 mysql-community-devel-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415   4217604 Jul  7 16:01 mysql-community-embedded-compat-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415   2218720 Jul  7 16:01 mysql-community-icu-data-files-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415   1582228 Jul  7 16:01 mysql-community-libs-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415    685808 Jul  7 16:02 mysql-community-libs-compat-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415  56195524 Jul  7 16:02 mysql-community-server-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415  21350292 Jul  7 16:02 mysql-community-server-debug-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 271649024 Jul  7 16:04 mysql-community-test-8.0.30-1.el7.x86_64.rpm

(4)登录数据库:

[root@192 mysqld]# systemctl start mysqld    #启动mysqld服务
[root@192 ~]# systemctl enable mysqld        #将mysqld服务设置为开机自启动
[root@192 ~]# systemctl list-unit-files |grep mysqld    #查看mysqld服务是否为开机自启动
mysqld.service                                enabled
[email protected]                               disabled
#登录数据库:
[root@192 mysqld]# grep "password" /var/log/mysqld.log    #获取root用户密码
2022-11-12T17:03:12.538271Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: _TYn:E=pX9t%
[root@192 mysqld]# mysql -u root -p    得到密码后登录数据库
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 15
Server version: 8.0.30 MySQL Community Server - GPL

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

三:数据库,数据表的基本操作:

1:数据库的基本操作:

(1)查询所有的数据库:show databases;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |          |
| sys                |
+--------------------+
5 rows in set (0.04 sec)

(2)创建数据库:create database 数据库名字;

创建数据库就是在数据库系统中划分一块空间存储数据,语法如下:

mysql> create database test_mysql;
Query OK, 1 row affected (0.01 sec)

mysql> 

(3)创建数据库后查看该数据库基本信息:show create database 数据库名字;

mysql> show create database test_mysql;
+------------+--------------------------------------------------------------------------------------------------------------------------------------+
| Database   | Create Database                                                                                                                      |
+------------+--------------------------------------------------------------------------------------------------------------------------------------+
| test_mysql | CREATE DATABASE `test_mysql` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */ |
+------------+--------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>

(4)使用数据库:use 数据库名字;

mysql> use test_mysql;
Database changed
mysql>

(5)删除数据库:drop database 数据库名字;

mysql> drop database test_mysql;
Query OK, 0 rows affected (0.09 sec)

mysql>

四:数据库中的数据表的基本操作:

(一):数据库中的数据表的基本操作(增):

数据库创建成功后可在该数据库中创建数据表(简称为表)储存数据。请注意:在操作数据表之前应使用 use 数据库名; 指明操作是在哪个数据库中进行,否则会抛出"No databas selected"错误。

(1)创建数据表:create table 数据表名(字段 字段类型);

create table 表名(
        字段1 字段类型,
        字段2 字段类型,
        ...   ...
        字段n 字段类型

);
示例:
mysql> create database test_mysql;        #创建数据库
Query OK, 1 row affected (0.00 sec)

mysql> use test_mysql;        #使用数据库
Database changed
mysql> create table student(        #创建数据表
    -> id int,
    -> name varchar(20),
    -> gender varchar(10),
    -> birthday date
    -> );
Query OK, 0 rows affected (0.05 sec)

mysql>

(2)查看当前数据库中所有的数据表:show tables;

示例:
mysql> show tables;
+----------------------+
| Tables_in_test_mysql |
+----------------------+
| student              |
+----------------------+
1 row in set (0.00 sec)

mysql>

(3)查看表的详细信息:show create table 数据表名;

示例:
mysql> show create table student;
+---------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table   | Create Table                                                                                                                                                                                                                |
+---------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| student | CREATE TABLE `student` (
  `id` int DEFAULT NULL,
  `name` varchar(20) DEFAULT NULL,
  `gender` varchar(10) DEFAULT NULL,
  `birthday` date DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+---------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.01 sec)

mysql>

(4)查看表的字段信息:desc 数据表名:

示例:
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| name     | varchar(20) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql>

(5)数据表查询语句:select +关键字后指定要显示的内容 from 数据表名;

        查看数据表中所有的内容:select * from 数据表名;

示例:(因为此时未在数据表中添加内容)
mysql> select * from student;
Empty set (0.00 sec)

mysql>
mysql> select id from student;
Empty set (0.00 sec)

mysql>

(6)为数据表中所有的字段插入数据:insert into 数据表名 (字段名1,字段名2,...) values (值1,值2,...)

每个字段与其value值是严格一 一对应的。也就是说:每个值,值的顺序,值的类型必须与对应的字段相匹配。但是,各字段在表中定义的顺序无需一致,只需要与value值对应即可。

示例:
mysql> insert into student (id,name,gender,birthday) values (1,'汪伟','男','2001-03-22');
Query OK, 1 row affected (0.01 sec)        #提示插入成功

mysql> select * from student;        #再次查询数据表中的内容
+------+--------+--------+------------+
| id   | name   | gender | birthday   |
+------+--------+--------+------------+
|    1 | 汪伟   | 男     | 2001-03-22 |
+------+--------+--------+------------+
1 row in set (0.00 sec)

mysql>

(7)为数据表中指定字段插入数据:insert into 数据表名 (字段) values (值);

示例:
mysql> insert into student (name) values ('张三');
Query OK, 1 row affected (0.01 sec)        #插入成功

mysql> select * from student;        #其他未插入的显示空
+------+--------+--------+------------+
| id   | name   | gender | birthday   |
+------+--------+--------+------------+
|    1 | 汪伟   | 男     | 2001-03-22 |
| NULL | 张三   | NULL   | NULL       |
+------+--------+--------+------------+
2 rows in set (0.00 sec)

mysql>

(8)同时插入多条数据:insert into 数据表名 (字段1,字段2,...) values (值1,值2,...),(值1,值2,...),...;

mysql> insert into student values (3,'李四','男','2000-01-01'),(4,'王麻子','女','2000-12-31');
Query OK, 2 rows affected (0.00 sec)        #提示添加成功
Records: 2  Duplicates: 0  Warnings: 0

mysql> select * from student;        #查询插入数据后的数据表
+------+-----------+--------+------------+
| id   | name      | gender | birthday   |
+------+-----------+--------+------------+
|    1 | 汪伟      | 男     | 2001-03-22 |
| NULL | 张三      | NULL   | NULL       |
|    3 | 李四      | 男     | 2000-01-01 |
|    4 | 王麻子    | 女     | 2000-12-31 |
+------+-----------+--------+------------+
4 rows in set (0.01 sec)

mysql>

(二):数据库中的数据表的基本操作(改 值):

(1)更新部分数据(也可称之为更改数据表中的数据):update 数据表名 set 字段名1=值1 where 条件表达式

在该语法中,字段1用于指定要更新的字段名称;值1用于表示字段的新数据,where条件语句是可选的,用于指定更新数据需要满足的条件。

示例:
mysql> update student set birthday='1999-12-31' where id=4;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0        #提示已修改更新成功

mysql> select * from student;        #发现满足条件id=4的birthday所对应的数据已经更新
+------+-----------+--------+------------+
| id   | name      | gender | birthday   |
+------+-----------+--------+------------+
|    1 | 汪伟      | 男     | 2001-03-22 |
| NULL | 张三      | NULL   | NULL       |
|    3 | 李四      | 男     | 2000-01-01 |
|    4 | 王麻子    | 女     | 1999-12-31 |
+------+-----------+--------+------------+
4 rows in set (0.00 sec)

mysql>

(2)update更新全部数据: update 数据表名 set 字段名=值;

mysql> update student set gender='男性';
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4  Changed: 4  Warnings: 0        #提示字段名对应的所有数据值已更新

mysql> select * from student;        #字段名gender对应的全部数据已经更新
+------+-----------+--------+------------+
| id   | name      | gender | birthday   |
+------+-----------+--------+------------+
|    1 | 汪伟      | 男性   | 2001-03-22 |
| NULL | 张三      | 男性   | NULL       |
|    3 | 李四      | 男性   | 2000-01-01 |
|    4 | 王麻子    | 男性   | 1999-12-31 |
+------+-----------+--------+------------+
4 rows in set (0.00 sec)

mysql>

(三):数据库中的数据表的基本操作(删除 值):

(1)删除指定数据:delete from 表名 where 条件;

原表:
mysql> select * from student;
+------+-----------+--------+------------+
| id   | newname   | gender | birthday   |
+------+-----------+--------+------------+
|    1 | 汪伟      | 男性   | 2001-03-22 |
| NULL | 张三      | 男性   | NULL       |
|    3 | 李四      | 男性   | 2000-01-01 |
|    4 | 王麻子    | 男性   | 1999-12-31 |
+------+-----------+--------+------------+
4 rows in set (0.00 sec)

mysql>
示例:将原表中名字为'张三'的数据删除:
mysql> delete from student where newname='张三';
Query OK, 1 row affected (0.11 sec)

mysql> select * from student;    #发现原表中张三的数据已删除
+------+-----------+--------+------------+
| id   | newname   | gender | birthday   |
+------+-----------+--------+------------+
|    1 | 汪伟      | 男性   | 2001-03-22 |
|    3 | 李四      | 男性   | 2000-01-01 |
|    4 | 王麻子    | 男性   | 1999-12-31 |
+------+-----------+--------+------------+
3 rows in set (0.00 sec)

mysql>

(2)删除数据表中所有的数据:delete from 数据表名;

(四):数据库中的数据表的基本操作(改 表):

(1)修改表名:alter table 数据表名 rename to 新表名;

(五):数据库中的数据表的基本操作(改 字段):

(1)修改字段数据类型:alter table 数据表名 modify 字段名 新数据类型(长度);

原表:
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| name     | varchar(20) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql>
示例:修改数据表中的name varchar(20)数据类型改为name varchar(10)

mysql> alter table student modify name varchar(10);
Query OK, 4 rows affected (0.05 sec)        #提示修改成功
Records: 4  Duplicates: 0  Warnings: 0

mysql> desc student;        #发现字段name的数据类型已经修改为varchar(10)
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| name     | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql>

(2)修改字段名:alter table 数据表名 change 旧字段名 新字段名 数据类型(长度);

原表:
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| name     | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql> 
示例:将字段name 改为 newname
mysql> alter table student change name newname varchar(10);
Query OK, 0 rows affected (0.01 sec)        #提示修改成功
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc student;        #发现旧字段名name已经修改为新字段名newname
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| newname  | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql>

(3)增加字段:alter table 数据表名 add 增加的字段名 类型(长度);

原表:
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| newname  | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql> 
示例:新增加字段 address varchar(50) 
mysql> alter table student add address varchar(50);
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc student;        #发现已经新添加了字段 address 
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| newname  | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
| address  | varchar(50) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

mysql>

(六):数据库中的数据表的基本操作(删除 字段):

(1)删除字段:alter table 表名 drop 字段名;

原表:
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| newname  | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
| address  | varchar(50) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

mysql> 
示例:删除字段address
mysql> alter table student drop address;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc student;        #发现address字段已经被删除
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| newname  | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

mysql>

(2)删除数据表:drop table 表名;

(七):数据库中的数据表的基本操作(查 字段):

(1)查询所有的字段:desc 表名;

示例:
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int         | YES  |     | NULL    |       |
| newname  | varchar(10) | YES  |     | NULL    |       |
| gender   | varchar(10) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)

mysql>

(八):数据库中的数据表的基本操作(查 字段对应的value值):

(1)查询所有的字段对应的值:select * from 表名;

示例:
mysql> select * from student;
+------+-----------+--------+------------+
| id   | newname   | gender | birthday   |
+------+-----------+--------+------------+
|    1 | 汪伟      | 男性   | 2001-03-22 |
|    3 | 李四      | 男性   | 2000-01-01 |
|    4 | 王麻子    | 男性   | 1999-12-31 |
+------+-----------+--------+------------+
3 rows in set (0.00 sec)

mysql> 

(2)查询指定的字段:select 指定字段 from 表名;

示例:查询student数据表中id,newname所有对应的值:
mysql> select id,newname from student;
+------+-----------+
| id   | newname   |
+------+-----------+
|    1 | 汪伟      |
|    3 | 李四      |
|    4 | 王麻子    |
+------+-----------+
3 rows in set (0.00 sec)

mysql>

(3)常数的查询:在select中除了书写列名,还可以书写常数,用于标记:select * ,'年*月*日' from 表名;

示例:标记日期2022-11-13
mysql> select id,newname ,'2022-11-13' from student;
+------+-----------+------------+
| id   | newname   | 2022-11-13 |
+------+-----------+------------+
|    1 | 汪伟      | 2022-11-13 |
|    3 | 李四      | 2022-11-13 |
|    4 | 王麻子    | 2022-11-13 |
+------+-----------+------------+
3 rows in set (0.00 sec)

mysql>

(4)从查询结果中过滤重复数据:select distinct 指定字段 from 表名;

原表:
mysql> select * from student;
+------+-----------+--------+------------+
| id   | newname   | gender | birthday   |
+------+-----------+--------+------------+
|    1 | 汪伟      | 男性   | 2001-03-22 |
|    3 | 李四      | 男性   | 2000-01-01 |
|    4 | 王麻子    | 男性   | 1999-12-31 |
+------+-----------+--------+------------+
3 rows in set (0.00 sec)

mysql> 
示例:将原表中gender的数据去重之后显示
mysql> select distinct gender from student;
+--------+
| gender |
+--------+
| 男性   |
+--------+
1 row in set (0.00 sec)

mysql>

你可能感兴趣的:(数据库,mysql)