【MySql】MySql语句大全

1. 插值

将另一个表中数据插入当前表中

INSERT INTO TableName_1
SELECT * FROM TableName_2 WHERE conditions;

直接插入值

INSERT INTO TableName (ColumnName, ColumnName) 
VALUES( value, value );

将多个表的数据汇总插入当前表中

INSERT INTO TableName ( name, id )
SELECT table1.name, table2.id
FROM table1,table2
WHERE table1.date = table2.date;

2. 更新语句

直接更新表中一些值

UPDATE TableName SET date = NULL;

3. 查看语句

查看属于某个属性的集合中该属性的个数,如下面就是看属于某天的某个人的记录总数

SELECT DATE, NAME, COUNT(*) FROM TABLENAME GROUP BY 1,2;

查看按照某列值分组,并且是分组里实例个数大于1的所有值。如:计算每天的总数大于1的文档个数。

SELECT COUNT(*) FROM TableName GROUP BY date HAVING COUNT(*)>1

查看按照某列分组,并且是分组里实例个数大于1的值的个数。如:每天文档总数大于1的天数。在上面的基础上给新建的表取别名。

SELECT COUNT(*) FROM (SELECT COUNT(*) FROM TableName GROUP BY date HAVING COUNT(*)>1) e ;

查看某列的所有元素,且去除重复元素。

SELECT DISTINCT FieldName FROM TableName;

4. 查看表结构

DESC TableName;

文件导入导出

从CSV文件导入数据,其中最后的括号内需填写的是你需要从文件读取的属性名,如你需从文件中读入的是id,name。则括号中写成(id,name)。注意顺序和文件中的顺序一致。

LOAD DATA LOCAL INFILE 'D:\\YOUR_ROUTE\\YOUR_FILE_NAME.csv' INTO TABLE TableName 
FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' (DB_FIELDS_1, DB_FIELDS_2);

P.S. CSV文件是一种Excel支持的文件格式,可以从Excel中直接将文件导出致CSV文件。其格式是一条数据一行,以转行符分隔(Linux下是'\r',Windows下是'\r\n')。数据的每个属性由逗号隔开。

从SQL文件导入数据,先选择或者创建数据库,然后再数据库下执行命令。

SOURCE SQL_FILENAME

表合并

表A和表B共有一个字段F,要将表B中数据按照该字段F写入表A中。使用INNER JOIN语句,即先对表A和表B用字段F做内积。再整列的更新表。

UPDATE TABLE1 a
     INNER JOIN TABLE2 b ON (a.match = b.match)
     SET a.FIELD1 = b.FIELD2;

Linux上建立数据库

建立数据库:

CREATE DATABASE DbName DEFAULT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci';

建立表格:

修改表格:

ALTER TABLE TableName ADD ColName1 varchar(30) AFTER ColName2;
ALTER TABLE TableName CHANGE ColName1 ChangeName varchar(30);

数据处理

处理时间戳:

FROM_UNIXTIME(TIMESTAMP, ‘%Y%m%d)
UNIX_TIMESTAMP('DATETIME') 


Little Tips

1. 注释: 单行用 --; 多行用 /**/



原文地址:https://www.cnblogs.com/xiaoka/p/2425524.html