SQL语句 常用记录
1,求平均,保留2位小数:
select convert(sum(`amount`)/count(*), decimal(10,2)) as avg from {$table}; // amount为数据库某个字段
2,条件累加
sum(IF(cnt > 8, p1, 0)) AS cnt1 ; // 如果符合 cnt > 8 条件,累加p1位的参数,否则累加0; p1可以是字段名, 第二个参数也可以是字段 count(IF(cnt > 8, true, null)) AS cnt2 ; // 如果符合 cnt > 8 条件就加1, true和null固定
3,判空NULL
ifnull(ext, 0) as mon ; // ext为某个字段或者表达式
4, 时间格式化
//格式化时间戳
FROM_UNIXTIME( 1249488000, '%Y年%m月%d' ) ; // 转化为时间戳,无参数则为当前时间
UNIX_TIMESTAMP() 或者 UNIX_TIMESTAMP('2019-11-01') ;
5,批量更新
INSERT INTO {$table} (`create_time` ) values({$create_time}) ON DUPLICATE KEY update `create_time`=VALUES(`create_time`); // ON DUPLICATE KEY update后面可放多个字段,用英文逗号隔开
6,insert ignore into 和 replace into
// 如果已经存在相同的记录,则忽略当前新数据, 不会产生错误
insert ignore into {$table} ( `create_time`) values({$create_time}); // 替换数据, 相当于先删除旧的数据,再用新数据替换上去; 如果不存在数据,效果则跟insert into 一样
replace into {$table} ( `create_time`) values({$create_time});
7,FIND_IN_SET 函数
// 常用于某个字段存储以逗号分隔的字符串, 查询某个数是否在这个字段字符串数据中
select * from {$table} where FIND_IN_SET('',`field`); // field 为字段名
8,mod 求余数函数
select * from {$table} where mod(uid, 500) = 23;
9,判断数据库是否存在该表,避免表不存在错误
show tables from {$database} like '{$table}';
10,TO_DAYS 函数, 返回一个从年份0开始的天数
// 比如要查询昨天的数据
select * from {$table} where to_days(now())-to_days(create_time) = 1
11,instr 函数, 作用类似 like '%关键词%';
// field 是字段, $str 是要查询的串,返回串 str 的位置,没找到就是0, 找到返回大于0的数字
SELECT INSTR(name, '明') FROM {$table};
SELECT * FROM {$table} where INSTR(name, '明') > 0; 作用等同: SELECT * FROM {$table} where name like '%明%';
12,
SQL语句 常用记录的更多相关文章
- Mysql中 查询慢的 Sql语句的记录查找
Mysql中 查询慢的 Sql语句的记录查找 慢查询日志 slow_query_log,是用来记录查询比较慢的sql语句,通过查询日志来查找哪条sql语句比较慢,这样可以对比较慢的sql可以进行优化. ...
- 监控SQL:执行表中所有sql语句、记录每个语句运行时间(3)
原文:监控SQL:执行表中所有sql语句.记录每个语句运行时间(3) 通过执行一个 带参数的存储过程 exec OpreateTB('OpreateUser','IsRun') 更新表的数据 表 ...
- SQL 语句常用函数
一.字符转换函数 1.ASCII()返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错. 2.CH ...
- 二 sql语句,常用字段数据类型
MySQL中常用DDL命令 database definition language 与 DML命令 : database definition language 操作数据库: 创建数据库 : ...
- sql语句操作记录
发觉一些sql语句写出来的时候不停忘记,做一个记录. mySQL .查看表的创建过程sql语句和注释,注释是在创建表的过程中增加comment,后面跟随注释的内容 SHOW CRATE TABLE T ...
- Mysql的SQL语句常用基本命令
SQL语句分类:DDL,DML,DQL,DCL. 1.数据库操作: 创建数据库:create database 数据库名 charater set gbk; 删除数据库:drop database 数 ...
- 微擎查询SQL语句常用
pdo_fetch:根据SQL语句,查询一条记录 array | boolean pdo_fetch($sql, $params = array()); // :uid 是参数的一个点位符,没有使用引 ...
- SQL 语句判断记录是否存在(最简洁简单性能最优)
今天查了下,发现网上的没有一个sql语句写的好的. 判断记录是否存在,要不是语句不够简洁,要不就是性能有很大问题. 我进行了优化后,最简洁简单性能最优的的sql语句,用来判断表中的记录是否存在: se ...
- 数据库优化之SQL语句优化-记录
1. 操作符优化 (a) IN 操作符 从Oracle执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查 ...
随机推荐
- 理解 __declspec
“__declspec”是Microsoft c++中专用的关键字,它配合着一些属性可以对标准C++进行扩充.这些属性有:align.allocate.deprecated. dllexport.dl ...
- [HNOI2004]L语言 字典树 记忆化搜索
[HNOI2004]L语言 字典树 记忆化搜索 给出\(n\)个字符串作为字典,询问\(m\)个字符串,求每个字符串最远能匹配(字典中的字符串)到的位置 容易想到使用字典树维护字典,然后又发现不能每步 ...
- CF1174E Ehab and the Expected GCD Problem(动规+数论+分解)
做法 先来填第一个数,为了保证\(f(p)\)最大,第一个数分解一下为\(\prod\limits_{p_i}p_i^{k_i}\)使得\(\sum\limits_{k_i}\)最大 显然第一个数为\ ...
- vue的基本用法
公共样式---pc版的404报错 动态src 这个是vue组件template部分 <div class="not-found"> <img :src=" ...
- spring cloud 常见面试题 来理解微服
为什么要谈 这些理论知识呢 理论知识 = 面试时候的谈资 !!! 你只有 进去公司 才有资格 去做一个码农 ok 话不多说 经历如此漫长的互联网发展 以本人的拙见 软件开发 粗略的 分为 ...
- 记一次ArrayList产生的线上OOM问题
前言:本以为(OutOfMemoryError)OOM问题会离我们很远,但在一次生产上线灰度的过程中就出现了Java.Lang.OutOfMemoryError:Java heap space异常,通 ...
- Java项目开发
项目开发整体构建: MVC+DAO设计模式 用面向对象的方式理解和使用数据库,一个数据库对应一个java项目 数据库--项目 表--类 字段--属性 表中的一条数据--类的一个对象 M:模型层 Jav ...
- Java 面向对象(八)
常用类之String String字符串类 什么是字符串?就是把多个字符,串连一起. String字符串的本质 其实是一个char[]数组 /**该值用于字符存储.*/ private final c ...
- javasript模块化
模块概述 随着一个网站越来越大,html页面文件越来越多,由<script src='xxx.js'></script>引入的js文件越来越多,我们的单个js文件很大,上几万行 ...
- linux工程管理软件—make
一.make概述 make是一种代码维护工具make工具会根据makefile文件定义的规则和步骤,完成整个软件项目的代码维护工作.一般用来简化编译工作,可以极大地提高软件开发的效率. win ...