show TABLES like 't_school'mysql
select * from INFORMATION_SCHEMA.TABLES like 't_school'sql
describe 表名 、 desc 表名 , 相似于命令 sp_text table数据库
drop table IF EXISTS 表名 , 有个好处就是在表不存在的时候也不会报错。oracle
create table 新表 like 旧表;注意只是复制表结构,主键也会复制成功,该表必须不存在函数
create table t_hwp select * from t_classes; 复制表结构和数据,可是不会复制主键sqlserver
show create table 表名;相似于 sqlserver 命令 sp_helpspa
truncate table 表名;这个和 delete from 表名 差很少日志
差别:orm
效率上truncate比delete快,但truncate删除后不记录mysql日志,不能够恢复数据。server
delete的效果有点像将mysql表中全部记录一条一条删除到删完,
而truncate至关于保留mysql表的结构,从新建立了这个表,全部的状态都至关于新表。
1)给列改名
>alter table 表名称 change 字段名称 字段名称 ;
2)给表改名
>alter table 表名称 rename 表名称
3)修改某个表的字段类型及指定为空或非空
>alter table 表名称 change 字段名称字段名称 字段类型 [是否容许非空];
>alter table 表名称 modify 字段名称字段类型 [是否容许非空];
四、修改某个表的字段名称及指定为空或非空
>alter table 表名称 change 字段原名称字段新名称 字段类型 [是否容许非空];
1)增长一个字段(一列)
>alter table table_name add column column_name type default value;
type指该字段的类型,value指该字段的默认值
2)更改一个字段名字(也能够改变类型和默认值)
>alter table table_name change sorce_col_name dest_col_name type defaultvalue;
source_col_name指原来的字段名称,dest_col_name 指改后的字段名称
3)改变一个字段的默认值
>alter table table_name alter column_name set default value;
4)改变一个字段的数据类型
>alter table table_name change column column_name column_name type;
5)向一个表中增长一个列作为主键
>alter table table_name add column column_name type auto_increment PRIMARYKEY;
6)将两个表里的数据拼接后插入到另外一个表里。
>insert into tx select t1.com1,concat(t1.com2,t2.com1) from t1,t2;
7)删除字段
>alter table form1 drop column 列名;
1)year(data):返回data表达式中的公元年分所对应的数值
2)month(data):返回data表达式中的月分所对应的数值
3)day(data):返回data表达式中的日期所对应的数值
之因此说要谨慎使用是由于,在oracle、SQLServer、PostgreSQL等数据库管理系统下,都是这样规定的,在查询时若是没有使用group by 的字段,若是在是查询字段那么必须使用聚合函数包装起来,在mysql这里竟然不须要,而后我验证了一下结果发现,mysql虽然不会报错,可是查询结果倒是错误的,他只是返回知足结果的第一条记录,由于他是先 group by 字段看有多少条。
不管如何,使用 group by 时,必须保证标准语法。另外distinct的效率没有group by 高,若是须要使用去重时,就可使用 group by 替换 distinct 。
limit 0 , 10 意思是从第一条记录开始,查询10条。