记录 SQL 语法(MySQL)

记录 SQL 语法(MySQL)

1、DDL

1.1、创建数据库
create datebase `DATABASE_NAME`;
1.2、创建表
create table `TABLE_NAME`(
	FIELD_NAME TYPE(int, varchar, ...) 
    [primary key/unique/auto_increment/foregin key],
    ...
)
1.3、复制表
/* 复制 表结构 + 数据 */
create table `TABLE_NAME_NEW` as select ...

/* 复制 表结构 */
create table `TABLE_NAME_NEW` like `TABLE_NAME`

例子1:创建表 right_item_new,复制表 right_item 的结构。

create table right_item_new like right_item;
1.4、查看建表语句
show create table TABLE_NAME;

2、增删改查(DML 和 DQL)

2.1、插入语句
insert into TABLE_NAME(FIELD_NAME, ...) value (VALUE, ...);

insert into TABLE_NAME values (VALUE, ...);
2.2、删除语句
delete from TABLE_NAME [where ...] 

例子1:有两张表 book_a 和 book_b,有字段 book_id,book_name,book_code(书的编号)等,删除 book_a 表中和 book_b 表 book_id 字段相同的记录。

delete from book_a where book_id in (
 select book_id from (
	select book_a.book_id from book_a, book_b
    where book_a.book_id = book_b.book_id) as t
);
2.3、更新语句
update TABLE_NAME set FIELD_NAME = VALUE, ...
[where ...]
2.4、查询语句
select FIELD, ... from TABLE_NAME
[left/right join TABLE_NAME_2 on ...]
[where ...]
[group by FIELD_NAME][having by ...]
[order by FIELD_NAME][asc/desc]
[limit NUMBER]

3、索引

3.1、创建索引
create index INDEX_NAME on TABLE_NAME(FIELD_NAME);
3.2、删除索引
drop index INDEX_NAME on TABLE_NAME;
3.3、查看 SQL 语句的执行计划
explain ...

4、视图

4.1、创建视图
create view VIEW_NAME as select ....
[with check option]
4.2、删除视图
drop view VIEW_NAME;

5、触发器

5.1、创建触发器
create trigger TRIGGER_NAME
(before/after) TRIGGER_EVENT(insert/update/delete) on TABLE_NAME
for each row
  [when ...]
  ...
5.2、删除触发器
drop trigger TRIGGER_NAME

6、存储过程

6.1、创建存储过程
create procedure PROCEDURE_NAME ([arg, ...])
  begin
  	...
  end
6.2、删除存储过程
drop procedure PROCEDURE_NAME;
6.3、创建函数
create function FUNCTION_NAME ([arg, ...])
  begin
  	...
  returns type(in/out/inout)
  end
6.4、删除函数
drop function FUNCTION_NAME;

猜你喜欢

转载自blog.csdn.net/weixin_51123079/article/details/127733338
今日推荐