持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第8天,点击查看活动详情
TRUNCATE和DETELE的区别
TRUNCATE和DETELE都能实现删除表中的所有数据的功能,但两者也是有区别的: 1、DELETE语句后可跟WHERE子句,可通过指定WHERE子句中的条件表达式只删除满足条件的部分记录;但是,TRUNCATE语句只能用于删除表中的所有记录。 2、使用TRUNCATE语句删除表中的数据后,再次向表中添加记录时自动增加字段的默认初始值重新由1开始;使用DELETE语句删除表中所有记录后,再次向表中添加记录时自动增加字段的值为删除时该字段的最大值加1 3、DELETE语句是DML语句,TRUNCATE语句通常被认为是DDL语句
1.简单查询概述
简单查询即不含where的select语句。在此,我们讲解简单查询中最常用的两种查询:查询所有字段和查询指定字段。 在此,先准备测试数据,代码如下:
-- 创建数据库 DROP DATABASE IF EXISTS mydb; CREATE DATABASE mydb; USE mydb;
-- 创建student表 CREATE TABLE student ( sid CHAR(6), sname VARCHAR(50), age INT, gender VARCHAR(50) DEFAULT 'male' );
-- 向student表插入数据 INSERT INTO student (sid,sname,age,gender) VALUES ('S_1001', 'lili', 14, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1002', 'wang', 15, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1003', 'tywd', 16, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1004', 'hfgs', 17, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1005', 'qwer', 18, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1006', 'zxsd', 19, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1007', 'hjop', 16, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1008', 'tyop', 15, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1009', 'nhmk', 13, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1010', 'xdfv', 17, 'female');
2.查询所有字段(方法不唯一只是举例)
查询所有字段 MySQL命令:
select * from student;
3.查询指定字段(sid、sname)
查询指定字段(sid、sname) MySQL命令:
select sid,sname from student;
4.常数的查询
在SELECT中除了书写列名,还可以书写常数。可以用于标记 常数的查询日期标记 MySQL命令:
select sid,sname,'2021-03-02' from student;
5.从查询结果中过滤重复数据
在使用DISTINCT 时需要注意: 在SELECT查询语句中DISTINCT关键字只能用在第一个所查列名之前。 MySQL命令:
select distinct gender from student;
6.算术运算符(举例加运算符)
在SELECT查询语句中还可以使用加减乘除运算符。 查询学生10年后的年龄 MySQL命令:
select sname,age+10 from student;