mysql 数据库sql语句汇总

1.MySQL 创建数据库

CREATE DATABASE 数据库名;

2.MySQL 删除数据库

drop 命令删除数据库:drop database <数据库名>;

3.MySQL 创建数据表
CREATE TABLE table_name (column_name column_type);

4.MySQL 删除数据表

drop table <数据表名>

在命令提示窗口中删除数据表

root@host# mysql -u root -p
Enter password:*******
mysql> use RUNOOB;
Database changed
mysql> DROP TABLE runoob_tbl
Query OK, 0 rows affected (0.8 sec)
mysql>

5.MySQL 插入数据
普通插入数据的方法

INSERT INTO table_name ( field1, field2,...fieldN )
                       VALUES
                       ( value1, value2,...valueN );

避免重复插入数据的三种方式

方案一:ignore
插入时检索主键列表,如存在相同主键记录,不更改原纪录,只插入新的记录。

INSERT IGNORE INTO

ignore关键字所修饰的SQL语句执行后,在遇到主键冲突时会返回一个0,代表并没有插入此条数据。如果主键是由后台生成的(如uuid),我们可以通过判断这个返回值是否为0来判断主键是否有冲突,从而重新生成新的主键key。

这是此ignore关键字比较常用的一种用法。

方案二:replace
插入时如发现主键已存在,则替换原记录,即先删除原记录,后insert新记录。

REPLACE INTO

方案三:on duplicate key update
插入时如果发现主键已存在,则执行UPDATE更新操作

INSERT INTO ... ON DUPLICATE KEY UPDATE

举例:

mysql> insert into device values (1,'readonly','yang') ON DUPLICATE KEY UPDATE status ='drain';
Query OK, 2 rows affected (0.00 sec)

翻译过来就是:插入一条数据(1,‘readonly’,‘yang’),当有重复的主键KEY,那就更新一下status吧。

6.MySQL 查询数据

SELECT column_name,column_name
FROM table_name

7.MySQL UPDATE 更新数据

UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]

可以增加where 条件只更新其中几条或者一条数据

8.MySQL DELETE 删除语句

DELETE FROM table_name [WHERE Clause]

增加where条件删除指定数据

9.case when then else end 的用法

SELECT            
    case                   -------------如果
    when sex='1' then '男' -------------sex='1',则返回值'男'
    when sex='2' then '女' -------------sex='2',则返回值'女'  
    else 0                 -------------其他的返回'其他’
    end                    -------------结束
from   sys_user            --------整体理解: 在sys_user表中如果sex='1',则返回值'男'如果sex='2',则返回值'女' 否则返回'其他’

用到时会同步更新

你可能感兴趣的:(mysql 数据库sql语句汇总)