文档章节

Mysql 基础知识积累

learn_more
 learn_more
发布于 2016/01/24 18:57
字数 974
阅读 107
收藏 19


1、显示数据库的所有表名称

show TABLES like 't_school'

select * from INFORMATION_SCHEMA.TABLES like 't_school'

2、显示表结构

describe 表名 、 desc  表名 , 类似于命令 sp_text table


3、删除表

drop table IF EXISTS 表名 , 有个好处就是在表不存在的时候也不会报错。


4、复制表结构

create table 新表 like 旧表;注意只是复制表结构,主键也会复制成功,该表必须不存在

create table t_hwp select * from t_classes; 复制表结构和数据,但是不会复制主键


5、显示建表语句

show create table 表名;类似于 sqlserver 命令 sp_help


6、清空表数据

truncate table 表名;这个和 delete from 表名 差不多

差异:

效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。

delete的效果有点像将mysql表中所有记录一条一条删除到删完,

而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。


7、修改表结构

1)给列更名

>alter table 表名称 change 字段名称 字段名称 

2)给表更名

>alter table 表名称 rename 表名称

3)修改某个表的字段类型及指定为空或非空 

>alter table 表名称 change 字段名称字段名称 字段类型 [是否允许非空];

>alter table 表名称 modify 字段名称字段类型 [是否允许非空];

4、修改某个表的字段名称及指定为空或非空

>alter table 表名称 change 字段原名称字段新名称 字段类型 [是否允许非空];


8、修改表结构

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 列名;


9、查询时使用的日期函数

 1)year(data):返回data表达式中的公元年分所对应的数值

 2)month(data):返回data表达式中的月分所对应的数值

 3)day(data):返回data表达式中的日期所对应的数值


10、查询当中的 group by 谨慎使用

之所以说要谨慎使用是因为,在oracle、SQLServer、PostgreSQL等数据库管理系统下,都是这样规定的,在查询时如果没有使用group by 的字段,如果在是查询字段那么必须使用聚合函数包装起来,在mysql这里居然不需要,然后我验证了一下结果发现,mysql虽然不会报错,但是查询结果却是错误的,他只是返回满足结果的第一条记录,因为他是先 group by 字段看有多少条。

无论如何,使用 group by 时,必须保证标准语法。另外distinct的效率没有group by 高,如果需要使用去重时,就可以使用 group by 替换 distinct 。 


11、limit 的使用

limit 0 , 10  意思是从第一条记录开始,查询10条。


© 著作权归作者所有

learn_more
粉丝 93
博文 240
码字总数 210196
作品 0
深圳
程序员
私信 提问
Java实习总结网易百度小米美团阿里(均offer)

本人是大三的软件工程专业学生,从2017年3月开始学Java,从那时候还不知道什么是接口,到现在分布式也有所了解,很幸运的拿到了这些offer 2017年10月 网易考拉 Java 12月 百度 Java 2018年 ...

牛客网
2018/06/22
0
0
【成都】有没有招java Web实习生的

大二的时候自学了java和Android,了解了一定的Android开发知识,去年暑假做了个校级项目,因为团队web这部分没人做,就把我搞去弄web端的开发(本来是说我做Android那部分的),为了缩短学习...

Mr_1024
2015/01/18
844
3
开发阶段总结

开发的关键点在于学习,学习可以说是在任何行业永恒的话题,学习什么?如何去学习?就编程而言,学习最终是为了应用,首先要学习到这种应用,然后学习其如何应用,再学为何能这样应用,最后学...

franos
2016/02/17
37
1
聊聊python爬虫开发入门的必备技能

关于爬虫,相信有不少同学都接触过。譬如你通过百度搜索“慕课网”,然后跳转到慕课网的首页,这里你访问的百度首页就用到了爬虫技术,它把慕课网的首页源代码爬取到了搜索引擎服务器中,进行...

NavCat
2018/07/02
0
0
咱也搞个半小时搞定mysql(基于9000小时定理+概念化学习的现实应用)

常见很多十天,二十天学会什么东东,当然但多数声音都是吐槽,其实,仔细想想,如果基本掌握一门计算机技能,十天半个月是很正常的,我们简单分析分析。 一:技能分级 我们简单做个技能分级,...

武耀文
2018/08/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
今天
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
11
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
12
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
11
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部