最近总感觉sql语句不对劲,所以就看了一些官方文档发现了一些以前没有注意的函数:感觉在查询的时候可以用得上,毕竟是内置函数,用起来效率应该会好一些的:

FIND_IN_SET(str,strlist)

mysql> SELECT FIND_IN_SET('b','a,b,c,d');
-> 2
如:SELECT FIND_IN_SET(a.roleId,r.roleName), a.* from t_admin a ,t_role r where a.roleId = r.roleId AND FIND_IN_SET(a.roleId,r.roleId);
代替in、not in

INSTR(str,substr)

mysql> SELECT INSTR('foobarbar', 'bar');
-> 4
如:select a.* FROM  t_admin a where INSTR(a.account,'发达');
可以用于模糊查询 代替like  提高效率

LOCATE(substr,str), LOCATE(substr,str,pos)

mysql> SELECT LOCATE('xbar', 'foobar');
-> 0
mysql> SELECT LOCATE('bar', 'foobarbar', 5);
-> 7
select a.* FROM  t_admin a where LOCATE('发达',a.account);
可以用于模糊查询 代替like  提高效率
  • select  
        substring_index(email,'@',-1) as domain,  
        count(distinct email) as count,  
        count(distinct email)  
            / (select count(distinct email) from t_user where email like '%@%')  
            * 100 as percent  
    from t_user  
    where email like '%@%'   
    group by 1   
    order by 3 ASC   
    limit 10;

select
substring_index(email,'@',-1) as domain,
count(distinct email) as count,
count(distinct email)
/ (select count(distinct email) from t_user where email like '%@%')
* 100 as percent
from t_user
where email like '%@%'
group by 1
order by 3 ASC
limit 10;

mysql函数的使用的更多相关文章

  1. Mysql - 函数

    Mysql提供的函数是在是太多了, 很多我都见过, 别说用了. 园子里面, 有人弄了一个比较全的. MYSQL函数 我这里会将他写的完全拷贝下来, 中间会插入一些自己项目中使用过的心得 一.数学函数 ...

  2. mysql连接查询,封装mysql函数

    连接查询 交叉连接语法: select  * | 字段列表 from 表1  cross join 表2 内连接: select *|字段列表 from 左表 inner join 右表 on 左表. ...

  3. MySQL 函数大全

    mysql函数大全 对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL,返回NU ...

  4. MySQL函数不能创建的解决方法

    MySQL函数不能创建,是一个很麻烦的问题,下面就为您提供了一个解决此问题的方法,如果您也遇到过类似的问题,不妨一看. http://database.51cto.com/art/201010/229 ...

  5. Mysql函数:Last_insert_id()语法讲解

    Mysql函数可以实现许多我们需要的功能,下面介绍的Mysql函数Last_insert_id()就是其中之一,希望对您学习Mysql函数能有所帮助. 自动返回最后一个INSERT或 UPDATE 查 ...

  6. linux下mysql函数的详细案列

    MYSQL * STDCALL mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *pas ...

  7. MySQL函数讲解(MySQL函数大全)

    讲mysql函数之前先给大家展示一下利用mysql函数的一个例子: SELECT i.item_id, i.item_name, i.cid, i.last_update_time, u.url, u ...

  8. mysql函数全解析

    本文摘自:http://www.cnblogs.com/cocos/archive/2011/05/06/2039469.html mysql函数大全 对于针对字符串位置的操作,第一个位置被标记为1. ...

  9. MySQL函数笔记

    MySQL函数笔记 日期函数 SELECT t1.xcjyrq, t1.* FROM view_sbxx t1 WHERE t1.syzt ; SELECT t1.xcjyrq, t1.* FROM ...

  10. 【转】mysql函数

    MySQL函数 MySQL数据库提供了很多函数包括: 数学函数: 字符串函数: 日期和时间函数: 条件判断函数: 系统信息函数: 加密函数: 格式化函数: 一.数学函数 数学函数主要用于处理数字,包括 ...

随机推荐

  1. py-faster-rcnn代码阅读2-config.py

    简介  该文件指定了用于fast rcnn训练的默认config选项,不能随意更改,如需更改,应当用yaml再写一个config_file,然后使用cfg_from_file(filename)导入以 ...

  2. 基于Disruptor并发框架的分类任务并发

    并发的场景 最近在编码中遇到的场景,我的程序需要处理不同类型的任务,场景要求如下: 1.同类任务串行.不同类任务并发. 2.高吞吐量. 3.任务类型动态增减. 思路 思路一: 最直接的想法,每有一个任 ...

  3. Replication容量和错误日志

    gtid排错 set sql_log_bin=off;  #人为关闭二进制日志

  4. android蓝牙耳机下的语音(输入/识别)及按键监听

    背景:本人负责公司android平台的app开发,最近要开发一个语音助手类的app,类似于灵犀语音助手.虫洞语音助手等.其中有两个蓝牙耳机下的语音识别问题,比较折腾人,问题描述:1.蓝牙耳机连接下捕获 ...

  5. 驱动程序vmci.sys版本不正确。请尝试重新安装 VMware

    今天在测试一台服务器,安装在虚拟机里面,但是发现在安装后,重启了一下电脑,出现了这个错误: 无法获取 vmci 驱动程序版本: 句柄无效.驱动程序 vmci.sys 版本不正确.请尝试重新安装 VMw ...

  6. NOIP 2000 计算器的改良

    题面 NCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能.实验室将这个任务交给了一个刚进入的新手ZL先生. 为 ...

  7. Windows 7 x64环境下SDK Manager闪退的解决方法

    1.下载并解压:http://dl.google.com/android/adt/adt-bundle-windows-x86_64-20140702.zip 2.安装JDK,否则SDK Manage ...

  8. 二维码生成delphi版

    二维码生成delphi版 生成二维码的软件,代码从C语言转换过来(源地址:http://fukuchi.org/works/qrencode/),断断续续的差不多花了一周时间来转换和调试.在转换过程中 ...

  9. Linux 安装操作系统标准

    一.注意事项. 1.虚拟机安装不做过多介绍. 2.若为主机(非服务器)安装需要按照如下步骤: a.首先需要将u盘刻录pe系统然后设置开机引导为u盘启动后进入,将以前的硬盘分区全部删除. b.若主机bi ...

  10. JMS(Java消息服务)

    JMS即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM:指的是利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来 ...