SQL
Posted surimj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL相关的知识,希望对你有一定的参考价值。
在shell中操作mysql
mysql -hhostname -Pport -uusername -ppassword "数据库名" -A -e "sql语句"
其中,mysql -A表示不预读数据库信息
Mysql 建立数据表
create table 表名( 关键字1 关键字数据类型, 关键字2 关键字数据类型 , ... , PRYMARY KEY (主键关键字1, 主键关键字2))ENGINE=InnoDB DEFAULT CHARSET=utf8;
主键:必须有且不能重复,可以由一个或者多个关键字联合作为主键。
例子:
mysql> create table tag_table( tag_type TINYINT NOT NULL, tag VARCHAR(20) NOT NULL, count INT, PRIMARY KEY(tag_type,tag ))ENGINE=InnoDB DEFAULT CHARSET=utf8;
清空数据表中的数据
delete from 表名;
truncate table 表名;
不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以清空mysql表中所有内容。
效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。
delete的效果有点像将mysql表中所有记录一条一条删除到删完,
而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。
查询数据 SELECT语句(+WHERE条件)
例子:
select tag_type, tag from table1 where tag_type=1 and FROM_UNIXTIME(create_time,‘%Y%m%d‘) between 20180905 and 20180905;
tag_type, tag是数据表的关键字,table1是表名
FROM_UNIXTIME(create_time,‘%Y%m%d‘) 函数将时间戳转换为日期形式,
如FROM_UNIXTIME( 1249488000, ‘%Y%m%d‘ ) -> 20071120。
查询表数据行数
select count(*) from 表名
以上是关于SQL的主要内容,如果未能解决你的问题,请参考以下文章