MySQL数据库的应用
1 数据结构模型 2 数据结构模型主要有: 3 层次模型 4 网状结构 5 关系模型 6 关系模型: 7 二维关系:row,column 8 数据库管理系统:DBMS 9 关系:Relational,RDBMS 10 SQL语句有三种类型: 11 DDL:Data Defination Language,数据定义语言 12 DML:Data Manipulation Language,数据操纵语言 13 DCL:Data Control Language,数据控制语言 14 15 SQL语句类型 16 对应操作 17 DDL 18 CREATE:创建 19 DROP:删除 20 ALTER:修改 21 DML 22 INSERT:向表中插入数据 23 DELETE:删除表中数据 24 UPDATE:更新表中数据 25 SELECT:查询表中数据 26 DCL 27 GRANT:授权 28 REVOKE:移除授权 29 安装数据库,并设置开机自启 30 [root@localhost ~]# yum -y install mariadb* 31 [root@localhost ~]# systemctl enable --now mariadb 32 [root@localhost ~]# ss -antl (确保数据库端口启动) 33 State Recv-Q Send-Q Local Address:Port Peer Address:Port 34 LISTEN0 128 0.0.0.0:22 0.0.0.0:* 35 LISTEN0 80 0.0.0.0:3306 0.0.0.0:* 36 LISTEN0 128 [::]:22 [::]:* 37 进入数据库并修改密码 38 [root@localhost ~]# mysql -uroot -p 39 MariaDB [(none)]> set password = password('990304'); 40 Query OK, 0 rows affected (0.005 sec) 41 服务器监听的两种socket地址 42 43 socket类型 44 说明 45 ip socket 46 默认监听在tcp的3306端口,支持远程通信 47 unix sock 48 监听在sock文件上(/tmp/mysql.sock,/var/lib/mysql/mysql.sock) 49 仅支持本地通信 50 server地址只能是:localhost,127.0.0.1 51 创建数据表 52 MariaDB [(none)]> create database if not exists wangming; 53 Query OK, 0 rows affected, 1 warning (0.001 sec) 54 查看当前的数据库 55 MariaDB [(none)]> show databases; 56 +--------------------+ 57 | Database | 58 +--------------------+ 59 | information_schema | 60 | mysql | 61 | performance_schema | 62 | wang | 63 | wangming | 64 | wangmingge | 65 | wangqi | 66 | wangqingge | 67 +--------------------+ 68 8 rows in set (0.002 sec) 69 删除数据库 70 MariaDB [(none)]> drop database if exists wangming; 71 Query OK, 0 rows affected (0.008 sec) 72 MariaDB [(none)]> drop database if exists wangmingge; 73 Query OK, 0 rows affected (0.001 sec) 74 MariaDB [(none)]> drop database if exists wangqingge ; 75 Query OK, 0 rows affected (0.001 sec) 76 MariaDB [(none)]> drop database if exists wangqi ; 77 Query OK, 2 rows affected (0.052 sec) 78 MariaDB [(none)]> show databases; 79 +--------------------+ 80 | Database | 81 +--------------------+ 82 | information_schema | 83 | mysql | 84 | performance_schema | 85 | wang | 86 +--------------------+ 87 4 rows in set (0.001 sec) 88 创建数据库,并在数据库里创建数据表 89 MariaDB [(none)]> create database wangming; 90 Query OK, 1 row affected (0.001 sec) 91 MariaDB [(none)]> use wangming; 92 Database changed 93 MariaDB [wangming]> create table wangming (id int not null,name varchar(100) not null,age tinyint); 94 Query OK, 0 rows affected (0.041 sec) 95 MariaDB [wangming]> show tables; 96 +--------------------+ 97 | Tables_in_wangming | 98 +--------------------+ 99 | wangming | 100 +--------------------+ 101 1 row in set (0.000 sec) 102 删除数据表 103 MariaDB [wangming]> drop table wangming; 104 Query OK, 0 rows affected (0.054 sec) 105 MariaDB [wangming]> show tables; 106 Empty set (0.000 sec) 107 修改数据表的格式,增加数据表字段。 108 MariaDB [wangming]> desc wangming; 109 +-------+--------------+------+-----+---------+-------+ 110 | Field | Type | Null | Key | Default | Extra | 111 +-------+--------------+------+-----+---------+-------+ 112 | id | int(11) | NO | | NULL | | 113 | name | varchar(100) | NO | | NULL | | 114 | age | tinyint(4) | YES | | NULL | | 115 +-------+--------------+------+-----+---------+-------+ 116 3 rows in set (0.006 sec) 117 MariaDB [wangming]> alter table wangming add class varchar(20); 118 Query OK, 0 rows affected (0.028 sec) 119 Records: 0 Duplicates: 0 Warnings: 0 120 MariaDB [wangming]> desc wangming; 121 +-------+--------------+------+-----+---------+-------+ 122 | Field | Type | Null | Key | Default | Extra | 123 +-------+--------------+------+-----+---------+-------+ 124 | id | int(11) | NO | | NULL | | 125 | name | varchar(100) | NO | | NULL | | 126 | age | tinyint(4) | YES | | NULL | | 127 | class | varchar(20) | YES | | NULL | | 128 +-------+--------------+------+-----+---------+-------+ 129 4 rows in set (0.002 sec) 130 删除数据表中字段,删除age 131 MariaDB [wangming]> alter table wangming drop age; 132 Query OK, 0 rows affected (0.043 sec) 133 Records: 0 Duplicates: 0 Warnings: 0 134 MariaDB [wangming]> desc wangming 135 -> ; 136 +-------+--------------+------+-----+---------+-------+ 137 | Field | Type | Null | Key | Default | Extra | 138 +-------+--------------+------+-----+---------+-------+ 139 | id | int(11) | NO | | NULL | | 140 | name | varchar(100) | NO | | NULL | | 141 | class | varchar(20) | YES | | NULL | | 142 +-------+--------------+------+-----+---------+-------+ 143 3 rows in set (0.003 sec) 144 查看命令SHOW 145 mysql> SHOW CHARACTER SET; //查看支持的所有字符集 146 mysql> SHOW ENGINES; //查看当前数据库支持的所有存储引擎 147 mysql> SHOW DATABASES; //查看数据库信息 148 mysql> SHOW TABLES FROM (表明); //不进入某数据库而列出其包含的所有表 149 //查看表结构 mysql> DESC (表明) 150 查看表的创建命令 151 mysql>SHOW CREATE TABLE (表明); 152 //查看某表的状态 153 mysql> use(表明); 154 mysql> SHOW TABLE STATUS LIK '(表明)'\G 155 /获取命令使用帮助 156 //语法:HELP keyword; 157 mysql> HELP CREATE TABLE; //获取创建表的帮助
1 DCL操作 2 创建授权grant 3 **权限类型(priv_type)** 4 | 权限类型 | 代表什么? | 5 | --- | --- | 6 | ALL | 所有权限 | 7 | SELECT | 读取内容的权限 | 8 | INSERT | 插入内容的权限 | 9 | UPDATE | 更新内容的权限 | 10 | DELETE | 删除内容的权限 | 11 | 12 **指定要操作的对象db_name.table_name** 13 14 | 表示方式 | 意义 | 15 | --- | --- | 16 | *.* | 所有库的所有表 | 17 | db_name | 指定库的所有表 | 18 | db_name.table_name | 指定库的指定表 || | 19 查看数据库是否启动 20 [root@localhost ~]# ss -antl 21 State Recv-Q Send-Q Local Address:Port Peer Address:Port 22 LISTEN0 128 0.0.0.0:22 0.0.0.0:* 23 LISTEN0 80 0.0.0.0:3306 0.0.0.0:* 24 LISTEN0 128 [::]:22 [::]:* | | 25 授权方式(大写部分是不可更改的) 26 //授权wangqing用户在数据库本机上登录访问所有数据库 27 mysql> GRANT ALL ON *.* TO 'wangqing'@'localhost' IDENTIFIED BY 'wangqing123!'; 28 Query OK, 0 rows affected, 1 warning (0.00 sec) 29 mysql> GRANT ALL ON *.* TO 'wangqing'@'127.0.0.1' IDENTIFIED BY 'wangqing123!'; 30 Query OK, 0 rows affected, 1 warning (0.00 sec) 31 //授权wangqing用户在172.16.12.129上远程登录访问wangqingge数据库 32 mysql> GRANT ALL ON wangqingge.* TO 'wangqing'@'172.16.12.129' IDENTIFIED BY 'wangqing123!'; 33 Query OK, 0 rows affected, 1 warning (0.00 sec) 34 //授权wangqing用户在所有位置上远程登录访问wangqingge数据库 35 mysql> GRANT ALL ON *.* TO 'wangqing'@'%' IDENTIFIED BY 'wangqing123!'; 36 Query OK, 0 rows affected, 1 warning (0.00 sec) 37 创建授权 38 [root@localhost ~]# mysql -uroot -p990304 39 MariaDB [(none)]> grant all on *.* to 'root'@'192.168.24.1' identified by '990304'; 40 Query OK, 0 rows affected (0.002 sec) 41 查看指定用户的授权 42 MariaDB [(none)]> show grants for 'root'@'192.168.24.1' 43 -> ; 44 +-------------------------------------------------------------------------------------------------------------------------+ 45 | Grants for root@192.168.24.1 | 46 +-------------------------------------------------------------------------------------------------------------------------+ 47 | GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.24.1' IDENTIFIED BY PASSWORD '*23AF288E5ABD0A7F77F9E51F2D452E28F1EA7B9C' | 48 +-------------------------------------------------------------------------------------------------------------------------+ 49 1 row in set (0.000 sec) 50 取消全部授权 51 MariaDB [(none)]> revoke all on *.* from 'root'@'192.168.24.1'; 52 Query OK, 0 rows affected (0.000 sec) 53 54 **注意:mysql服务进程启动时会读取mysql库中的所有授权表至内存中:** 55 56 * GRANT或REVOKE等执行权限操作会保存于表中,mysql的服务进程会自动重读授权表,并更新至内存中 57 * 对于不能够或不能及时重读授权表的命令,可手动让mysql的服务进程重读授权表 58 * mysql> FLUSH PRIVILEGES; 59 60 DML操作 61
ORDER BY:排序,默认为升序(ASC)
| ORDER BY语句 | 意义 |
|---|---|
| ORDER BY ‘column_name' | 根据column_name进行升序排序 |
| ORDER BY 'column_name' DESC | 根据column_name进行降序排序 |
| ORDER BY ’column_name' LIMIT 2 | 根据column_name进行升序排序 并只取前2个结果 |
| ORDER BY ‘column_name' LIMIT 1,2 | 根据column_name进行升序排序 并且略过第1个结果取后面的2个结果 |
75 76 77 增加数据表内容 78 MariaDB [wangqi]> INSERT INTO wangming (id,name,age) VALUE (12,'tm',22),(2,'www',23),(3,'wer',34),(4,'zc',18),(5,'ls',22); 79 MariaDB [wangqi]> select * from wangming ; 80 +----+------+------+ 81 | id | name | age | 82 +----+------+------+ 83 | 12 | tm | 22 | 84 | 2 | www | 23 | 85 | 3 | wer | 34 | 86 | 4 | zc | 18 | 87 | 5 | ls | 22 | 88 +----+------+------+ 89 5 rows in set (0.001 sec) 90 **改数据表的内容**update语句 91 MariaDB [wangqi]> select * from wangming ; 92 +----+------+------+ 93 | id | name | age | 94 +----+------+------+ 95 | 12 | tm | 22 | 96 | 2 | www | 23 | 97 | 3 | wer | 34 | 98 | 4 | zc | 18 | 99 | 5 | ls | 22 | 100 +----+------+------+ 101 5 rows in set (0.001 sec) 102 103 MariaDB [wangqi]> select * from wangming where name = 'ls'; 104 +----+------+------+ 105 | id | name | age | 106 +----+------+------+ 107 | 4 | ls | 22 | 108 +----+------+------+ 109 1 row in set (0.002 sec) 110 修改age值 111 MariaDB [wangqi]> update wangming set age =29 where name = 'ls'; 112 Query OK, 1 row affected (0.020 sec) 113 Rows matched: 1 Changed: 1 Warnings: 0 114 MariaDB [wangqi]> select * from wangming where name = 'ls'; 115 +----+------+------+ 116 | id | name | age | 117 +----+------+------+ 118 | 5 | ls | 29 | 119 +----+------+------+ 120 1 row in set (0.001 sec) 121 修改name值 122 MariaDB [wangqi]> update wangming set name = 'lisi' where id = '5'; 123 Query OK, 1 row affected (0.006 sec) 124 Rows matched: 1 Changed: 1 Warnings: 0 125 MariaDB [wangqi]> select * from wangming where name = 'lisi'; 126 +----+------+------+ 127 | id | name | age | 128 +----+------+------+ 129 | 5 | lisi | 29 | 130 +----+------+------+ 131 1 row in set (0.001 sec) 132 修改id值 133 MariaDB [wangqi]> update wangming set id = '10' where name= 'lisi'; 134 Query OK, 1 row affected (0.020 sec) 135 Rows matched: 1 Changed: 1 Warnings: 0 136 137 MariaDB [wangqi]> select * from wangming where name = 'lisi'; 138 +----+------+------+ 139 | id | name | age | 140 +----+------+------+ 141 | 10 | lisi | 29 | 142 +----+------+------+ 143 1 row in set (0.000 sec) 144 145 查询数据表内容 146 MariaDB [wangqi]> select * from wangming; 147 +----+------+------+ 148 | id | name | age | 149 +----+------+------+ 150 | 12 | tm | 22 | 151 | 2 | www | 23 | 152 | 3 | wer | 34 | 153 | 4 | zc | 18 | 154 | 10 | lisi | 29 | 155 +----+------+------+ 156 5 rows in set (0.000 sec) 157 158 只查看name内容(其他关键字查看大概一样) 159 MariaDB [wangqi]> select name from wangming; 160 +------+ 161 | name | 162 +------+ 163 | tm | 164 | www | 165 | wer | 166 | zc | 167 | lisi | 168 +------+ 169 按age值排序小到大 170 MariaDB [wangqi]> select * from wangming order by age; 171 +----+------+------+ 172 | id | name | age | 173 +----+------+------+ 174 | 4 | zc | 18 | 175 | 12 | tm | 22 | 176 | 2 | www | 23 | 177 | 10 | lisi | 29 | 178 | 3 | wer | 34 | 179 +----+------+------+ 180 5 rows in set (0.001 sec) 181 age值由大到小 182 MariaDB [wangqi]> select * from wangming order by age desc; 183 +----+------+------+ 184 | id | name | age | 185 +----+------+------+ 186 | 3 | wer | 34 | 187 | 10 | lisi | 29 | 188 | 2 | www | 23 | 189 | 12 | tm | 22 | 190 | 4 | zc | 18 | 191 +----+------+------+ 192 5 rows in set (0.001 sec) 193 取当前数据库排序最后两个值 194 MariaDB [wangqi]> select * from wangming order by age limit 2; 195 +----+------+------+ 196 | id | name | age | 197 +----+------+------+ 198 | 4 | zc | 18 | 199 | 12 | tm | 22 | 200 +----+------+------+ 201 2 rows in set (0.001 sec) 202 去掉当前排序的最后一位,拿出最后两个 203 MariaDB [wangqi]> select * from wangming order by age limit 1,2; 204 +----+------+------+ 205 | id | name | age | 206 +----+------+------+ 207 | 12 | tm | 22 | 208 | 2 | www | 23 | 209 +----+------+------+ 210 2 rows in set (0.001 sec) 211 取出大于等于20的值 212 MariaDB [wangqi]> select * from wangming where age >= 20; 213 +----+------+------+ 214 | id | name | age | 215 +----+------+------+ 216 | 12 | tm | 22 | 217 | 2 | www | 23 | 218 | 3 | wer | 34 | 219 | 10 | lisi | 29 | 220 +----+------+------+ 221 4 rows in set (0.019 sec) 222 取出大于age20并且叫www的值 223 MariaDB [wangqi]> select * from wangming where age >=20 and name = 'www'; 224 +----+------+------+ 225 | id | name | age | 226 +----+------+------+ 227 | 2 | www | 23 | 228 +----+------+------+ 229 1 row in set (0.001 sec) 230 取出age的20到30之间的值 231 MariaDB [wangqi]> select * from wangming where age between 232 20 and 30; 233 +----+------+------+ 234 | id | name | age | 235 +----+------+------+ 236 | 12 | tm | 22 | 237 | 2 | www | 23 | 238 | 10 | lisi | 29 | 239 +----+------+------+ 240 3 rows in set (0.002 sec) 241 查看age值非空值的所有值 242 MariaDB [wangqi]> select * from wangming where age is not null; 243 +----+------+------+ 244 | id | name | age | 245 +----+------+------+ 246 | 12 | tm | 22 | 247 | 2 | www | 23 | 248 | 3 | wer | 34 | 249 | 4 | zc | 18 | 250 | 10 | lisi | 29 | 251 +----+------+------+ 252 5 rows in set (0.001 sec) 253 查看为空值的数 254 MariaDB [wangqi]> select * from wangming where age is null; 255 Empty set (0.001 sec) 256 257 delete语句 258 删除数据表的值 259 MariaDB [wangqi]> select * from wangming; 260 +----+------+------+ 261 | id | name | age | 262 +----+------+------+ 263 | 12 | tm | 22 | 264 | 2 | www | 23 | 265 | 3 | wer | 34 | 266 | 4 | zc | 18 | 267 | 10 | lisi | 29 | 268 +----+------+------+ 269 5 rows in set (0.015 sec) 270 MariaDB [wangqi]> delete from wangming where id = 10; 271 Query OK, 1 row affected (0.056 sec) 272 MariaDB [wangqi]> select * from wangming ;(//删除某条记录) 273 +----+------+------+ 274 | id | name | age | 275 +----+------+------+ 276 | 12 | tm | 22 | 277 | 2 | www | 23 | 278 | 3 | wer | 34 | 279 | 4 | zc | 18 | 280 +----+------+------+ 281 4 rows in set (0.006 sec) 282 MariaDB [wangqi]> delete from wangming;(删除整个工作表) 283 Query OK, 4 rows affected (0.020 sec) 284 MariaDB [wangqi]> select * from wangming; 285 Empty set (0.000 sec) 286 MariaDB [wangqi]> desc wangming; 287 +-------+--------------+------+-----+---------+-------+ 288 | Field | Type | Null | Key | Default | Extra | 289 +-------+--------------+------+-----+---------+-------+ 290 | id | int(11) | NO | | NULL | | 291 | name | varchar(100) | NO | | NULL | | 292 | age | tinyint(4) | YES | | NULL | | 293 +-------+--------------+------+-----+---------+-------+ 294 3 rows in set (0.018 sec) 295 另一种删除方式 296 truncate语句 297 MariaDB [wangqi]> select * from wangqi; 298 +----+------+------+ 299 | id | name | age | 300 +----+------+------+ 301 | 1 | tom | 20 | 302 +----+------+------+ 303 1 row in set (0.000 sec) 304 MariaDB [wangqi]> truncate wangqi; 305 Query OK, 0 rows affected (0.057 sec) 306 MariaDB [wangqi]> select * from wangqi ; 307 Empty set (0.005 sec) 308 MariaDB [wangqi]> desc wangqi; 309 +-------+--------------+------+-----+---------+-------+ 310 | Field | Type | Null | Key | Default | Extra | 311 +-------+--------------+------+-----+---------+-------+ 312 | id | int(11) | NO | | NULL | | 313 | name | varchar(100) | NO | | NULL | | 314 | age | tinyint(4) | YES | | NULL | | 315 +-------+--------------+------+-----+---------+-------+ 316 3 rows in set (0.001 sec) 317 truncate与delete的区别: 318
truncate与delete的区别:
| 语句类型 | 特点 |
|---|---|
| delete | DELETE删除表内容时仅删除内容,但会保留表结构 DELETE语句每次删除一行,并在事务日志中为所删除的每行记录一项 可以通过回滚事务日志恢复数据 非常占用空间 |
| truncate | 删除表中所有数据,且无法恢复 表结构、约束和索引等保持不变,新添加的行计数值重置为初始值 执行速度比DELETE快,且使用的系统和事务日志资源少 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放 对于有外键约束引用的表,不能使用TRUNCATE TABLE删除数据 不能用于加入了索引视图的表 |
332 333
习题:
1、创建一个以你名字为名的数据库,并创建一张表student,该表包含三个字段(id,name,age),表结构如下: mysql> desc student; +-------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(100) | NO | | NULL | | | age | tinyint(4) | YES | | NULL | | +-------+--------------+------+-----+---------+----------------+ MariaDB [(none)]> create database if not exists wangming; Query OK, 1 row affected (0.001 sec) MariaDB [wangming]> create table wangming (id int(11) not null,name varchar(100) not null,age tinyint(4) null); Query OK, 0 rows affected (0.027 sec) MariaDB [wangming]> create table wangming (id int(11) primary key not null auto_increment ,name varchar(100) not null,age tinyint(4) null); Query OK, 0 rows affected (0.023 sec) MariaDB [wangming]> desc wangming; +-------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(100) | NO | | NULL | | | age | tinyint(4) | YES | | NULL | | +-------+--------------+------+-----+---------+----------------+ 3 rows in set (0.001 sec) 2、查看下该新建的表有无内容(用select语句) MariaDB [wangming]> select * from wangming; Empty set (0.000 sec) 3、往新建的student表中插入数据(用insert语句),结果应如下所示: +----+-------------+------+ | id | name | age | +----+-------------+------+ | 1 | tom | 20 | | 2 | jerry | 23 | | 3 | wangqing | 25 | | 4 | sean | 28 | | 5 | zhangshan | 26 | | 6 | zhangshan | 20 | | 7 | lisi | NULL | | 8 | chenshuo | 10 | | 9 | wangwu | 3 | | 10 | qiuyi | 15 | | 11 | qiuxiaotian | 20 | +----+-------------+------+ MariaDB [wangming]> insert into wangming(id,name,age) values (1,'tom',20),(2,'jerry',23),(3,'wangqing',25),(4,'sean',28),(5,'zhangshan',26),(6,'zhangshan',20),(7,'lisi',null),(8,'chenshuo',10),(9,'wangwu',3),(10,'qiuyi',15),(11,'qiuxiaotian',20); Query OK, 11 rows affected (0.025 sec) Records: 11 Duplicates: 0 Warnings: 0 MariaDB [wangming]> select * from wangming; +----+-------------+------+ | id | name | age | +----+-------------+------+ | 1 | tom | 20 | | 2 | jerry | 23 | | 3 | wangqing | 25 | | 4 | sean | 28 | | 5 | zhangshan | 26 | | 6 | zhangshan | 20 | | 7 | lisi | NULL | | 8 | chenshuo | 10 | | 9 | wangwu | 3 | | 10 | qiuyi | 15 | | 11 | qiuxiaotian | 20 | +----+-------------+------+ 11 rows in set (0.000 sec) 4、修改lisi的年龄为50 MariaDB [wangming]> update wangming set age = 50 where name = 'lisi'; Query OK, 1 row affected (0.045 sec) Rows matched: 1 Changed: 1 Warnings: 0 MariaDB [wangming]> select * from wangming where name ='lisi'; +----+------+------+ | id | name | age | +----+------+------+ | 7 | lisi | 50 | +----+------+------+ 1 row in set (0.001 sec) 5、以age字段降序排序 MariaDB [wangming]> select * from wangming order by age desc; +----+-------------+------+ | id | name | age | +----+-------------+------+ | 7 | lisi | 50 | | 4 | sean | 28 | | 5 | zhangshan | 26 | | 3 | wangqing | 25 | | 2 | jerry | 23 | | 1 | tom | 20 | | 6 | zhangshan | 20 | | 11 | qiuxiaotian | 20 | | 10 | qiuyi | 15 | | 8 | chenshuo | 10 | | 9 | wangwu | 3 | +----+-------------+------+ 11 rows in set (0.001 sec) 6、查询student表中年龄最小的3位同学跳过前2位 MariaDB [wangming]> select * from wangming order by age limit 2,3; +----+-------------+------+ | id | name | age | +----+-------------+------+ | 10 | qiuyi | 15 | | 1 | tom | 20 | | 11 | qiuxiaotian | 20 | +----+-------------+------+ 3 rows in set (0.001 sec) 7、查询student表中年龄最大的4位同学 MariaDB [wangming]> select * from wangming order by age desc limit 4; +----+-----------+------+ | id | name | age | +----+-----------+------+ | 7 | lisi | 50 | | 4 | sean | 28 | | 5 | zhangshan | 26 | | 3 | wangqing | 25 | +----+-----------+------+ 4 rows in set (0.001 sec) 8、查询student表中名字叫zhangshan的记录 MariaDB [wangming]> select * from wangming where name ='zhangshan'; +----+-----------+------+ | id | name | age | +----+-----------+------+ | 5 | zhangshan | 26 | | 6 | zhangshan | 20 | +----+-----------+------+ 2 rows in set (0.001 sec) 9、查询student表中名字叫zhangshan且年龄大于20岁的记录 MariaDB [wangming]> select * from wangming where name ='zhangshan' and age > 20; +----+-----------+------+ | id | name | age | +----+-----------+------+ | 5 | zhangshan | 26 | +----+-----------+------+ 1 row in set (0.001 sec) 10、查询student表中年龄在23到30之间的记录 MariaDB [wangming]> select * from wangming where age between 23 and 30; +----+-----------+------+ | id | name | age | +----+-----------+------+ | 2 | jerry | 23 | | 3 | wangqing | 25 | | 4 | sean | 28 | | 5 | zhangshan | 26 | +----+-----------+------+ 4 rows in set (0.012 sec) 11、修改wangwu的年龄为100 MariaDB [wangming]> update wangming set age = 100 where name = 'wangwu'; Query OK, 1 row affected (0.023 sec) Rows matched: 1 Changed: 1 Warnings: 0 MariaDB [wangming]> select * from wangming where name = 'wangwu'; +----+--------+------+ | id | name | age | +----+--------+------+ | 9 | wangwu | 100 | +----+--------+------+ 1 row in set (0.001 sec) 12、删除student中名字叫zhangshan且年龄小于等于20的记录 MariaDB [wangming]> delete from wangming where name = 'zhangshan' and age <= 20 ; Query OK, 1 row affected (0.018 sec) MariaDB [wangming]> select * from wangming where name = 'zhangshan'; +----+-----------+------+ | id | name | age | +----+-----------+------+ | 5 | zhangshan | 26 | +----+-----------+------+ 1 row in set (0.002 sec)

浙公网安备 33010602011771号