SQL语法集合
查询
select * from table limit 0,10 取0位置后面的10条记录
limit 0 表示从第一条记录开始 起始位置从0开始
10 表示取多少条记录
新增
insert into table(列1,列2)
insert into table(列1,列2) values(值1,值2),(值3,值4),(值5,值6)
insert tnto tb2(name,age) select name, age from tb1;
修改
update table set name='aaa',age=100 where id>10
删除
delete from table
delete from table where id >1 or name='aa'
排序
select * from table order by id desc;
select * from table order by age desc, id asc;
分组(group by)
按part_id分组查询的意思是:只要是part_id相同的记录就会合并成一条数据,但是合并后是显示ID为801的记录还是ID为601的记录,数据库是无法决定的.所以必须在sql语句中手动指定以哪行记录作为显示结果.max(id) 相当于告诉数据库显示801,min(id) 显示601.sum(id) 求id的和,avg(id)求id的平均值.count(id)求行数
select count(id),name from table group by name having count(id) >5
select count(id) ,name from table where id>0 group by name having count(id) > 5
对于聚合函数的结果进行二次筛选的时候,必须要使用having
备份和恢复
mysqldump工具:客户端命令,通过mysql协议连接至mysqld服务器进行备份
mysqldump常见选项:
-A, --all-databases 备份所有数据库,含create database
-B , --databases db_name… 指定备份的数据库,包括create database语句
-E, --events:备份相关的所有event scheduler
-R, --routines:备份所有存储过程和自定义函数
--triggers:备份表相关触发器,默认启用,用--skip-triggers,不备份触发器
--master-data[=#]: 此选项须启用二进制日志
1:所备份的数据之前加一条记录为CHANGE MASTER TO语句,非注释,不 指定#,默认为1
2:记录为注释的CHANGE MASTER TO语句
此选项会自动关闭--lock-tables功能,自动打开-x | --lock-all-tables功能(除 非开启--single-transaction)
-F, --flush-logs :备份前滚动日志,锁定表完成后,执行flush logs命令,生成新的 二进制日志文件,配合-A 或 -B 选项时,会导致刷新多次数据库。建议在同一时刻 执行转储和日志刷新,可通过和--single-transaction或-x,--master-data 一起使 用实现,此时只刷新一次日志
--compact 去掉注释,适合调试,生产不使用
-d, --no-data 只备份表结构
-t, --no-create-info 只备份数据,不备份create table
-n,--no-create-db 不备份create database,可被-A或-B覆盖
--flush-privileges 备份mysql或相关时需要使用
-f, --force 忽略SQL错误,继续执行
--hex-blob 使用十六进制符号转储二进制列(例如,“abc”变为0x616263), 受影响的数据类型包括BINARY, VARBINARY,BLOB,BIT
-q, --quick 不缓存查询,直接输出,加快备份速度
InnoDB建议备份策略
mysqldump –uroot –A –F –E –R --single-transaction --master-data=1 -flush-privileges --triggers --hex-blob >$BACKUP/fullbak_$BACKUP_TIME.sql
mysqldump -A -F --single-transaction --master-data=1 > /backup/all.sql
MyISAM建议备份策略
mysqldump –uroot –A –F –E –R –x --master-data=1 --flush-privileges -triggers --hex-blob >$BACKUP/fullbak_$BACKUP_TIME.sql
恢复备份数据库
在mysql命令中直接执行备份的sql脚本即可恢复备份的数据
mysql < /backup/all.sql
SQL语法集合的更多相关文章
- 值得注意的ibatis动态sql语法格式
一.Ibatis常用动态sql语法,简单粗暴用一例子 <select id="iBatisSelectList" parameterClass="java.util ...
- Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等)
Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等) 子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 = from c i ...
- [转]MySQL 最基本的SQL语法/语句
MySQL 最基本的SQL语法/语句,使用mysql的朋友可以参考下. DDL-数据定义语言(Create,Alter,Drop,DECLARE) DML-数据操纵语言(Select,Delete ...
- [Android新手区] SQLite 操作详解--SQL语法
该文章完全摘自转自:北大青鸟[Android新手区] SQLite 操作详解--SQL语法 :http://home.bdqn.cn/thread-49363-1-1.html SQLite库可以解 ...
- SQLite的SQL语法
SQLite库能够解析大部分标准SQL语言.但它也省去了一些特性而且增加了一些自己的新特性.这篇文档就是试图描写叙述那些SQLite支持/不支持的SQL语法的.查看keyword列表. 例如以下语法表 ...
- SQLite的 SQL语法总结
SQLite库可以解析大部分标准SQL语言.但它也省去了一些特性并且加入了一些自己的新特性.这篇文档就是试图描述那些SQLite支持/不支持的SQL语法的.查看关键字列表. 如下语法表格中,纯文本用蓝 ...
- 面试必须要知道的SQL语法,语句
面试必须要知道的SQL语法,语句 收藏 asc 按升序排列desc 按降序排列下列语句部分是Mssql语句,不可以在access中使用.SQL分类: DDL—数据定义语言(Create,Alter,D ...
- SQL开发——SQL语法
文档资料参考: 参考:http://www.w3school.com.cn/sql/sql_syntax.asp 参考:http://wiki.jikexueyuan.com/project/sql/ ...
- SQL语法汇总
以下默认为mySQL与SQLsever都能使用SQLsever不能使用的另外标出来了 显示数据库SHOW DATABASES;进入其中一个数据库USE students;显示进入数据库中的所有表SHO ...
随机推荐
- [Algorithm] Asymptotic Growth Rate
f(n) 的形式 vs 判定形势 但,此题型过于简单,一般不出现在考题中. Extended: link Let's set n = 2^m, so m = log(n) T(n) = 2*T(n^( ...
- sscanf的字符串格式化用法
sscanf()为C语言标准库函数,用于从指定字符串中读入与指定格式相符的数据.函数原型声明在stdio.h头文件中: int sscanf(const char *str, const char * ...
- 深入理解 Java 虚拟机之学习笔记(1)
本书结构: 从宏观的角度介绍了整个Java技术体系.Java和JVM的发展历程.模块化,以及JDK的编译 讲解了JVM的自动内存管理,包括虚拟机内存区域的划分原理以及各种内存溢出异常产生的原因 分析了 ...
- 用开源项目ActivityOptionsICS让ActivityOptions的动画实现兼容
我之前写过一篇文章是讲解ActivityOption的api方法的(http://www.cnblogs.com/tianzhijiexian/p/4087917.html),当时吐槽各种动画不兼容, ...
- Linux下的tr编辑器命令详解
通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个字符,或者可以完全除去一些字符.您也可以用它来除去重复 ...
- print 与标准输出
print会自动添加换行符 其它的,没什么区别.有时候为了使用灵活,才会这么用. 例如你想把print的内容写向一下log文件,你可以这么做 stdout_bk = sys.stdout #备份一下标 ...
- window的cmd使用
有时候安装软件也需要使用cmd,如果要进入目前所在盘符的其他路径用cd命令可进入,但如果从c盘进入d盘等,是不用cd命令的. 如目前在c盘的任意目录,需要切换到d盘的根目录,用:“d:”命令(不含引号 ...
- 网络通信协议八之(传输层)TCP协议详解
传输层协议 分段是为了提高传输效率,封装是指给每个数据段添加一个编号 端到端的传输是逻辑上的端到端,并不是真正意义上的发送方某层与接收方某层之间的传输 IP协议只是保证数据报文发送到目的地,为主机之间 ...
- 网络通信协议三之TCP/IP模型详解
TCP/IP模型 注:PDU:Protocol Date Unit:表示对等层之间传递的数据单位 TCP:Transmission Control Protocol:传输控制协议 UDP:User D ...
- 9月16日,base 福州,2018MAD技术论坛邀您一起探讨最前沿AR技术!
“ 人工智能新一波浪潮带动了语音.AR等技术的快速发展,随着智能手机和智能设备的普及,人机交互的方式也变得越来越自然. 9月16日,由网龙网络公司.msup联合主办的MAD技术论坛将在福州举行.本次论 ...