sql基础语句大全

版权声明:已标记,所属内容不得不转载 https://blog.csdn.net/qq_42350238/article/details/82110873

DDL
创建一个数据库
create database if not exists db5; – 创建一个数据库

    create database if not exists db6 character set gbk; -- 创建一个数据库判断他是否存在,并且制定gbk字符集

查看库
show databases; – 查看所有的数据库

    show create database db1;   -- 查看此数据库的字符集;也可以说成是查询某个数据库的创建语句;

修改库
alter database db1 character set gbk; – 修改数据库的字符集
删除库
drop database if exists db1; – 删除数据库
使用库
select database(); – 查看当前使用的数据库

    use db2;-- 使用数据库

/————————————————————————————–/
查询表

    show tables;   -- 查看当前数据库里的所有表
    desc student;       -- 查看表结构

创建表
create table stu(
uname varchar(30), – 姓名
uage int, – 年龄
uaddress varchar(30), – 地址
ubirthday date, – 出生年月
utime timestamp – 创建表时间 最后一列,不需要加逗号.
);

删除表
drop table student; – 删除表
drop table if exists stu; – 删除表
复制表
create table student like stu; – 复制表
修改表
1. 修改表名
    alter table 表名 rename to 新的表名;
2. 修改表的字符集
    alter table 表名 character set 字符集名称;
3. 添加一列
    alter table 表名 add 列名 数据类型;
4. 修改列名称 类型
    alter table 表名 change 列名 新列别 新数据类型;
    alter table 表名 modify 列名 新数据类型;
5. 删除列
    alter table 表名 drop 列名;

DML:
/* 给表中添加数据*/
insert into student(表名)
(uname,uage,uaddress,ubirthday,utime)
values(“张三”,13,”北京”,null,null),;

删除数据
delete from student where uname=”张三”; – 根据条件删除表中的数据
delete from student;– 删除整个表,但只会一条一条的去删,而且主键不会自动归0;
truncate table student; – 率更高 先删除表,然后再创建一张一样的表。清空主键增长的记录

修改数据
update student set uname=”李四”,uage=18 where id=1; 根据id从而修改表中的数据
update student set uname=”李四”; – 默认把表中所有的uname修改成为李四

DQL:
查看
select * from student; – 查看表中的数据
select distinct uage,uname from student; – 指定字段去除重复的结果;

    select uame,uage,uame+ifnull(uage,0) from student ; -- 指定字段然后让他们进行相加,假设age里有null,则使用ifnull判断给它设置值为0;
    select uname,uage 年龄,english 英语,uage+english as 总分 from student ;  -- 起别名,再字段后面直接写,实际是省略了as;

条件查询:SELECT * FROM student WHERE age > 20;
模式查询:– 查询姓马的有哪些? like
SELECT * FROM student WHERE NAME LIKE ‘马%’;
– 查询姓名第二个字是化的人

    SELECT * FROM student WHERE NAME LIKE "_化%";

    -- 查询姓名是3个字的人
    SELECT * FROM student WHERE NAME LIKE '___';

    -- 查询姓名中包含德的人
    SELECT * FROM student WHERE NAME LIKE '%德%';        

猜你喜欢

转载自blog.csdn.net/qq_42350238/article/details/82110873