在测试时用到的一些mysql的小技巧(持续更新)
经常使用的快捷键:
1.ctrl+q 打开查询窗口
2.ctrl+/ 注释sql语句
3.ctrl+shift +/ 解除注释
4.ctrl+r 运行查询窗口的sql语句
5.ctrl+shift+r 只运行选中的sql语句
6.F6 打开一个mysql命令行窗口
7.ctrl+l 删除一行
8.ctrl+n 打开一个新的查询窗口
9.ctrl+w 关闭一个查询窗口
多表查询结果连接显示:
UNION自动去除重复行;UNION ALL 重复行保留
limit和between的用法:
select * from admin order by admin_id limit 100000,10 #跳过100000行显示前10行
select * from admin where admin_id between 100000 admin 100010 order by admin_id #显示100000到100010之间的行数
SELECT * FROM Persons WHERE LastName BETWEEN 'A' AND 'B'
用python连接并操作mysql
导入pymysql模块,pip install pymysql
import pymysql.cursors # 连接数据库
connect = pymysql.Connect(
host = '120.26.90.177',
port = 3306,
user = 'test_admin',
passwd = 'bdwork.com!@#',
db = 'bdwork_test',
charset = 'utf8'
)
# 获取游标
cursor = connect.cursor() # 查询数据
sql = "SELECT realname,source from pre_xj_eventapply where uid in (314948,314739,314740,314839)"
cursor.execute(sql)
for row in cursor.fetchall():
print(row)
print('共查找出', cursor.rowcount, '条数据') # 关闭连接
cursor.close()
connect.close()
mysql
like在生产上尽量不要用,*也都直接替换成要查询的具体字段,这些都可以减轻数据库负担,加快查询速度。
查询当前时间:
SELECT Now()

创建数据表:
create table 表名(
字段名 int(10) primary key not null unique,
字段名 varchar(50) not null,
字段名 varchar(50) not null
);
查看创建的表格:
DESC 表名

创建一个存储函数来统计表sch中的记录数:
create function count_sch()
returns int
return (select count(*) from sch);
#查看
select count_sch() as count_sch;
#创建的存储函数名称为count_sch,通过select count_sch()查看函数执行的情况,这个表中只有两条记录,得到的结果也是两条记录,说明存储函数成功的执行。 SELECT DISTINCT 字段 FROM 表; # 去除重复
SELECT TOP 50 PERCENT * FROM 表; # 取表中前50%的数据 SQL HAVING 语句 与WHERE关键字对比去记,因为WHERE无法与聚合函数一起使用。HAVING 子句可以让我们筛选分组后的各组数据。
#格式化显示时间
DATE_FORMAT(FROM_UNIXTIME(字段名), '显示格式')
shift+home选中整行sql
shift+ctrl+r运行选中的sql 把当前时间字段减少6天
UPDATE asset_repayment_order set repayment_time = DATE_sub(repayment_time, INTERVAL 6 DAY)
update 表 set 字段 = date_sub(字段,interval 天数 day)
说明:
增加当前时间,
select date_add('2000-02-28', interval 1 day);#结果为:'2000-02-29'
字符串转md5

SELECT SUBSTR(17621211515,1,3)
截取字符串

例子:

concat拼接

FROM子查询,任何查询语句都可以作为一张表进行二次查询
SELECT a.`status` FROM (
SELECT * from asset_borrow_order where `status` = 7) a
自连接,派生表连接
输出某一列的排名过程:


在测试时用到的一些mysql的小技巧(持续更新)的更多相关文章
- Mysql注入小tips --持续更新中
学习Web安全好几年了,接触最多的是Sql注入,一直最不熟悉的也是Sql注入.OWASP中,Sql注入危害绝对是Top1.花了一点时间研究了下Mysql类型的注入. 文章中的tips将会持续更新,先说 ...
- mysql优化小技巧
对mysql优化时一个综合性的技术,主要包括 a: 表的设计合理化(符合3NF) b: 添加适当索引(index) [四种: 普通索引.主键索引.唯一索引unique.全文索引] c: 分表技术(水平 ...
- mysql 函数编程大全(持续更新)
insert ignore insert ignore表示,如果中已经存在相同的记录,则忽略当前新数据 如果您使用一个例如“SET col_name = col_name + 1”的赋值,则对位于右侧 ...
- mysql使用小技巧
1.mySql 删除表中大批量的数据 假设有一个表(logs)有2000万条记录,我们要在业 务不停止的情况下删除其中status=1的所有记录,差不多有1800万条,直接执行 DELETE FROM ...
- mysql一些小技巧
1 强制命中索引:force index 某些时候查询,索引会失效,可以进行强制命中索引 2 group_concat 能将相同的行组合起来. 当然,我推荐这种操作可以在代码中操作,如果必须在特定情况 ...
- MySQL 常用命令(持续更新)
停止启动MySQL服务 停止:net stop mysql启动:net start mysql 查看正在运行的线程 SHOW PROCESSLIST SHOW FULL PROCESSLIST 杀死线 ...
- 【mysql】 操作 收集持续更新
一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据 GROUP_CONCAT(Name SEPARATOR ',') 需注意: 1.GROUP_CONCAT()中的值为你要合并的数据的 ...
- MySQL 优化小技巧
碎片整理: mysql数据一开始是在磁盘上顺序存放的,如果数据表有频繁的update改动,那么数据就会形成很多碎片,拖慢速度和不利于索引: 优化碎片有两种方式: alter table user en ...
- mysql 查询小技巧
数据字段中存放的是id集,形如 1,2,15,35 也可类推json格式 查询时不用拆分了, 用上 instr.concat搜索和连接字符串 查询fids中包含15的 select * from ...
随机推荐
- 【luogu P2947 [USACO09MAR]向右看齐Look Up】 题解
题目链接:https://www.luogu.org/problemnew/show/P2947 因为在单调队列上被dalao们锤爆 怒刷单调队列题 何为单调队列? 设我们的队列为从左至右单调递增 对 ...
- HDU 1221 Rectangle and Circle(判断圆和矩形是不是相交)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1221 Rectangle and Circle Time Limit: 2000/1000 MS (J ...
- code First 四
先从现有数据库获取代码: 我们创建模型的时候选择Code First就可以了 public ModelStudent() : base("name=ModelStudent") ...
- Spring知识点总结(一)
1. 框架概述 所谓的框架其实就是程序的架子,在这个程序的架子中,搭建起程序的基本的骨架,针对程序的通用问题给出了便捷的解决方案,可以使开发人员 基于框架快速开发具体的应用程序. ...
- React中setState同步更新策略
setState 同步更新 我们在上文中提及,为了提高性能React将setState设置为批次更新,即是异步操作函数,并不能以顺序控制流的方式设置某些事件,我们也不能依赖于this.state来计算 ...
- c# 分布式系统开发
开篇吹牛,吹大牛了各位. 接连几篇博文,已经将了我们系统常用的东西,主要针对服务端,非桌面系统. 聊了这么久了,最后将这所有内容打包,完成一个系统.可能称为组件才合适,因为我没有提供启动程序. 每一个 ...
- zepto 基础知识(1)
1.$() 的用法. 获取元素 $('div') //获取所有页面中的div元素 $('#foo') // 获取ID 为"foo"的元素 创建元素 $("<p> ...
- 如何用hexo搭建个人博客. 亲测有效
搭建博客: 安装node.js和git 以管理员身份进入cmd. 输入: npm install -g cnpm --registry=https://registry.npm.taobao.org ...
- 搭建mysql主从复制和删库数据恢复策略
搭建主从复制 主机: [mysqld] 下增加 vim /etc/my.cnf ## 设置 server_id,一般设置为 IP server_id=8 # # 复制过滤:需要备份的数据库,输出 bi ...
- CentOS7——vi编辑保存
按ESC键 跳到命令模式,然后: :w 保存文件但不退出vi :w file 将修改另外保存到file中,不退出vi :w! 强制保存,不推出vi :wq 保存文件并退出vi :wq! 强制保存文件, ...
