MYSQL 测试常用语句使用技巧
- select UNIX_TIMESTAMP(NOW()); -- 将时间转换为时间戳 1518428395
- select FROM_UNIXTIME(1518428166); -- 将时间戳转换为时间 2018-02-12 17:36:06
- select FROM_UNIXTIME(1518428166,'%Y-%m-%d') -- 2018-02-12
- SELECT STR_TO_DATE(NOW(),'%Y-%m-%d'); -- 2018-02-12 java代码调用会出错
- SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %k:%i:%s'); -- 2018-02-12 17:44:33
- select date_format(DATE_SUB(NOW(),INTERVAL +1 DAY), '%Y%m%d') -- 20180211 +为减去多少天 -为加多少天
SELECT DATE_SUB(CURDATE(),INTERVAL -1 DAY); -- 2018-02-13
随机数
- set @min=1;
- set @max =3;
- select FLOOR(RAND() * @max-@min+1)+@min; -- 返回1-3之间的随机数
- select FLOOR(RAND() * 56); -- 产生0-56的随机整数数
- SELECT FORMAT(rand()*55,2); -- 0-55随机数,保留2位小数
小数处理
- SELECT FORMAT(22.6655,2); -- 四舍五入 保留2位小数
- SELECT truncate(1.228,2); -- 只舍不入 保留2位小数
UNION和 UNION ALL区别
- select 'a1','a2' FROM DUAL UNION -- 会合并成1条数据 结果1
- select 'a1','a2' from DUAL;
- select 'a1','a2' FROM DUAL UNION ALL -- 不会合并 还是2条数据 结果2
- select 'a1','a2' from DUAL;
其他使用技巧
- select 53+IFNULL(NULL,0);-- IFNULL 返回53
- -- case WHEN
- select uid, (CASE ISNULL(leader_uid) WHEN TRUE THEN 0 ELSE leader_uid END ) leader_uid ,channel_id from ( select uid,b.leader_uid,channel_id from t_mer a LEFT JOIN t_mer_group b on a.uid = b.member_uid) a
- -- IFNULL(expr1,expr2)
- select uid, IFNULL(leader_uid,0) ,channel_id from ( select uid,b.leader_uid,channel_id from t_mer a LEFT JOIN t_mer_group b on a.uid = b.member_uid) a
UPDATE
- update t_user_game_binding t set t.member_uid = (select uid from t_mer where channel_id = t.chl_id limit 1);
- -- 比上面那个高效
- UPDATE t_user_game_binding LEFT JOIN t_mer ON t_user_game_binding.chl_id = t_mer.channel_id SET member_uid = t_mer.uid
Insert
- -- insert包含join
- INSERT INTO t_user_game_binding_1 (user_id,outter_game_id,chl_id,member_uid)
- SELECT a.user_id,a.outter_game_id,a.chl_id,b.uid FROM t_user_game_binding a LEFT JOIN t_mer b on a.chl_id=b.channel_id;
- INSERT ignore t_user_game_binding_1…… -- 忽略错误
- -- 根据条件insert insert into ... select ..from dual where EXISTS ()
- INSERT INTO `test` (`t1`) SELECT 'x' from dual where not EXISTS (select * from test);
-- 避免插入重复的数据详情点击 https://www.cnblogs.com/duanxiaojun/p/6855680.html?utm_source=itdadao&utm_medium=referral
其他使用技巧
- -- 随机排序
- SELECT * FROM t_game ORDER BY RAND() LIMIT 1;
- select CONCAT('a','','') -- 返回 a1112
- select * from t_user_register_chl t where t.user_register_chl =1 and user_register_account REGEXP '^[a-z].*$' -- 正则表达式匹配
- -- 正数 负数转换
- select -1*55,ABS(-11);
- -- 向前补位 0001
- select LPAD('',3,0);
- -- 向后补位 1000
- select RPAD('',3,0);
修改DDL
- alter table tableName modify column redeem_code VARCHAR(500) NOT NULL DEFAULT '' COMMENT '兑换码'; -- 修改字段长度
- alter table t_user_checked_record ADD id BIGINT auto_increment primary key; -- 增加自增列
mysql 性能分析 EXPLAIN
- EXPLAIN select * from user_base_info t where uid='';
- -- 设置cache大小
- SET GLOBAL max_binlog_cache_size =1009715200;
- SET GLOBAL binlog_cache_size =1009715200;
- -- select into 一定要初始化变量
- SET @id = NULL;
- SET @n = NULL;
- select game_id,outter_game_id INTO @id,@n from t_game where game_id%5=0 limit 1;
- select @id,@n;
关于教程:http://www.w3school.com.cn/sql/index.asp
MYSQL 测试常用语句使用技巧的更多相关文章
- DBA必备:MySQL数据库常用操作和技巧
DBA必备:MySQL数据库常用操作和技巧 2011-02-25 15:31 kaduo it168 字号:T | T MySQL数据库可以说是DBA们最常见和常用的数据库之一,为了方便大家使用,老M ...
- mysql的常用语句
Mysql的常用语句 -- 创建表 create table tableName( id int primary key, name varchar(20) ) -- 查询 select * from ...
- mysql数据库常用语句2
关于mysql常用语句的整理,上一篇涉及到ddl.dml以及一些简单的查询语句. 1:mysql分页查询 select * from table_name limit 5,10; 从下标为5元素查 ...
- mysql数据库常用语句
关于mysql数据库常用命令的整理: 一:对于数据库的操作 show databases;显示当前用户下所有的数据库名称 use database_name;进入当前数据库 create databa ...
- MySQL:常用语句
ylbtech-MySQL:常用语句 1.返回顶部 1. -- ---------------------------- -- Table structure for st_student -- -- ...
- MySQL数据库常用操作和技巧
MySQL数据库可以说是DBA们最常见和常用的数据库之一,MySQL的广泛应用,也使更多的人加入到学习它的行列之中.下面是老MySQL DBA总结的MySQL数据库最常见和最常使用的一些经验和技巧,分 ...
- mysql sql常用语句大全
SQL执行一次INSERT INTO查询,插入多行记录 insert into test.person(number,name,birthday) values(5,'cxx5',now()),(6, ...
- mysql数据库常用语句3
一:查询指定数据库中所有的表名 数据库名:test select table_name from information_schema.tables where table_schema='test' ...
- MySql中常用语句
1.查询语句: SELECT 查询字段 FROM 表名 WHERE 条件 查询字段可以使用 通配符* 字段名 别名(把长的名字命名一个别名,比较短的) 通配符:SELECT * FROM ' ...
随机推荐
- Cucumber 使用例子
1. junit 配置 @RunWith(Cucumber.class) @CucumberOptions(format ={"pretty","html:target/ ...
- 5.Python使用最新爬虫工具requests-html
1.安装,在命令行输入:pip install requests-html,安装成功后,在Pycharm引入即可. 2.代码如下所示: from requests_html import HTMLSe ...
- Zen Coding改名Emmet-功能更智能化
早在2009年,谢尔盖Chikuyonok写了一篇文章,提出了一种新的编写HTML和CSS代码的方式.这一革命性的插件,被称为zen coding,多年来已帮助许多开发人员,现在已达到一个新的水平. ...
- Xbox360游戏收藏
xbox360游戏下载地址 http://dl.3dmgame.com/SoftList_221.html XBLA游戏总结.http://tieba.baidu.com/p/3174478602 ...
- java代码FileInputStream的复制粘贴练习
所有的输入输出流都是对于程序来说的,这个图是实现文件内容的复制粘贴功能的e 首先把文件读到哦程序里,然后把程序读出到文件l package com.a.b; //这个复制和粘贴-----------首 ...
- 条件随机场(CRF)-基础
条件随机场(conditional random fields,简称 CRF,或CRFs)下文简称CRF,是一种典型的判别模型,相比隐马尔可夫模型可以没有很强的假设存在,在分词.词性标注.命名实体识别 ...
- c++ 先序构建二叉树
二叉树首先要解决构建问题,才能考虑后续的遍历,这里贴出通过先序构建二叉树,同时包含四种二叉树的遍历方法(先序,中序,后序,逐层) 第一.定义BinaryTreeNode 类 #include < ...
- 匿名方法,lambad表达式,匿名类
其实lambad表达式就是“函数”或者说是“方法”写法的一个进化,越来越简化而已,如数学方法里的f(X). 匿名方法:顾名思义,匿名方法就是没有名称的方法,但是有定义参数. 匿名方法最明显的好处就是可 ...
- OD 快捷键
F3 为加载一个可执行程序,进行调试分析 F2 为下断点 下完断点后,地址变为红色的 程序执行到断点处的时候会停下来 取消断点也是 F2 F4 为把程序执行到光标所在处 如果光标所在的位置在断点处之后 ...
- 浏览器及CURL代理设置
需要代理的请求 代理服务器及端口 120.197.233.205 80 firefox为例浏览器代理设置:(浏览器端也可以通过foxyproxy插件方便设置) 选项->高级->网络-> ...