MySQL实现模糊查询(REGEXP,LIKE)有2种方式

MySQL实现模糊查询(REGEXP,LIKE)有2种方式
在mysql中实现模糊查询有两种方法一种是LIKE/NOT LIKE,另一种是REGEXP/NOT REGEXP方法,下面我来给大家介绍它们的用法,希望此教程对各位同学会有所帮助. 一是用LIKE/NOT LIKE,二是用REGEXP/NOT REGEXP,或RLIKE/NOT RLIKE,它们是同义词. 第一种:标准的SQL模式匹配. 它有2种通配符:“_”和“%”,“_”匹配任意单个字符,而“%”匹配任意多个字符(包括0个),举例如下: SELECT * FROM table_name WHERE column_name LIKE ...

MySql中substring字符串截取函数用法

MySql中substring字符串截取函数用法
在mysql中常用的字符串截取函数有substring,SUBSTRING_INDEX了,substring是pos开始长度为len的字符串了,这个与php字符串截取函数有点像,下面我们一起来看看. 用法: SUBSTRING(str,pos,len)    SUBSTRING(str FROM pos FOR len)    SUBSTRING(str,pos)    SUBSTRING(str FROM pos)    别名SUBSTR,截取字符...

mysql中ASCII、ORD函数用法详解

mysql中ASCII、ORD函数用法详解
在mysql中ASCII、ORD函数都是把字符转换成ascii码值的函数了,下面我来给各位同学介绍一下mysql中ASCII、ORD用法. 一,ASCII(str1) 返回字符串str的最左面字符的ASCII代码值,如果str是空字符串,返回0,如果str是NULL,返回NULL. 举例:1.代码如下: mysql> select ascii('hi');    +————-+    | ascii('hi') |    +————-+  &...

MySql format与date_format函数用法区别

MySql format与date_format函数用法区别
在mysql中格式化函数有几个,像format,date_format,TIME_FORMAT这三个函数有很多朋友都不明白,下面我来给大家详细举例说明这三个函数用法 一,FORMAT(X,D) 格式化数字X为类似于格式'#,###,###.##',四舍五入到D为小数。如果D为0,结果将没有小数点和小数部分。 举例:1.代码如下: SELECT FORMAT(12324.2573,3);输出: 12,324.257 2.在有where条件时使用,代码如下: SELECT book_name,FORMAT(book_price,4) F...

MySQL数据库二进制日志备份和恢复步骤

MySQL数据库二进制日志备份和恢复步骤
在mysql中利用二进制日志备份与恢复数据库算是一种比较高级的数据库备份操作方法了,我们必须先在my.ini中打开mysql-bin功能,下面我来给大有介绍一下。 基本概念 定义:二进制日志包含了所有更新了数据或者已经潜在更新了数据(例如,没有匹配任何行的一个DELETE)的所有语句。 作用:1.二进制日志的主要目的是在恢复使能够最大可能地更新数据库,因为二进制日志包含备份后进行的所有更新。 2.二进制日志还...

mysql 触发器update替代new用法详解

mysql 触发器update替代new用法详解
在mysql触发器中不可以直接使用update进行数据更新操作了,这个不是mysql bug而官方说可能使用了update会导致死循环了,推荐我们直接使用new赋值变量了. mysql下insert和update触发器是不能再使用update和insert操作的,官方说明是为了防止出现死循环,解决的办法就是直接对new里的字段赋值,其实也挺方便的,不过也说明mysql的技术有待加强,毕竟人家mssql能够实现的功能,到你这就出问题了,代码如下: DELIMIT...

mysql中利用mysqldump命令备份还原数据库

mysql中利用mysqldump命令备份还原数据库
mysqldump命令是mysql中一个非常不错的数据库操作命令,他可以对数据库进行备份与还原,同时几乎所有数据库命令备份都会用到它,下面我来介绍一下mysqldump一些用法。 一、常用操作: 备份整个数据库 格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 (–database) 数据库名 > 文件名.sql mysqldump -h{hostname} -P{port} -u{username} -p{password} {databasename} > {backupfile.sql} 例如,代码如...

mysql中CONCAT值为空的问题解决办法

mysql中CONCAT值为空的问题解决办法
在mysql中concat函数有一个特点就是有一个值为null那么不管第二个字符有多少内容都返回为空了,这个特性让我们在实例应用中可能觉得不方便,但实现就是这样我们需要使用其它办法来解决. 在做opencart开发的时候,需要对用户表中用户的电话号码和区号连接起来,于是使用了concat方法,代码如下: SELECT CONCAT(isdcode,telephone) FROM gb_customer 竟然发现很多NULL列,telephone明明是有值的,于是查询了相关conc...

centos 6设置mysql不区分大小写

centos 6设置mysql不区分大小写
在linux系统中mysql区分大小写写的,如果你想让mysql不区分大小写的话我们可以在my.ini中修改lower_case_table_names即可. 今天公司服务器上,tomcat去读取mysql里的数据,居然无法读取成功,查看了下tomcat的日志,发现数据里有一句包含得有大小写的字母,为了解决这个问题,网上搜了一下,居然是要让mysql忽略大小写,但我们公司的mysql是做了主从的,为了不影响主从环境和mysql里的数据,我们提前给老大打了招呼,说...

mysql提示[Warning] Cant create test file xxx lower-test

mysql提示[Warning] Cant create test file xxx lower-test
在linux中碰到提示mysql提示[Warning] Cant create test file xxx lower-test了,下面有碰到此类问题的朋友一起来看看解决办法. 我想,你一定是从搜索引擎搜索这个标题进来的,你一定是想改变mysql默认安装的数据目录,你已经修改了my.cnf中的datadir的值,首先是查看数据库日志. mysqld started    [Warning] Can't create test file xxx.lower-test &n...

mysql导入存储过程报错问题解决方法

mysql导入存储过程报错问题解决方法
在mysql导入存储过程报错问题有很多种,今天我总结了两种报错提示与解决方法,希望此教程对各位朋友会有所帮助. 今天向mysql导入存储过程的时候报错,错误如下:you *might* want to use the less safe log_bin_trust_function_creators variable 处理这个问题,只需要进入mysql,在my.ini 里搜索[mysqld],直接在下边加一句话: log-bin-trust-function-creators=1 或直接使用如下代码:mysql> SET GLOBAL log_...

mysql导入存储过程无法使用

mysql导入存储过程无法使用
在mysql中用户对存储过程的权限有:ALTER ROUTINE 编辑或删除存储过程,CREATE ROUTINE 创建存储过程,EXECUTE运行存储过程权限,下面我来给大家介绍一个我碰到的问题. 存储过程的创建者拥有存储过程的ALTER、CREATE、EXECUTE权限,通过mysql导入的数据库,当里面有存储过程的时候,导入后存储过程是无法用程序使用了,找了很久原因,最后发现是权限问题. 1、我们要用查看数据库里面的存储过程,在mysql里面输入如下...

mysql The table‘xxxx’is full 设置临时表大小

mysql The table‘xxxx’is full 设置临时表大小
在mysql中临时表就出现xxx is full我们只要对my.ini中tmp_table_size与max_heap_table_size参数进行修改即可. tmp_table_size 如果内存内的临时表超过该值,MySQL自动将它转换为硬盘上的MyISAM表,如果你执行许多高级GROUP BY查询并且有大量内存,则可以增加tmp_table_size的值,max_heap_table_size 该变量设置MEMORY (HEAP)表可以增长到的最大空间大小. tmp_table_size 如果内存内的临时表超过该值,MySQL自动...

mysql自连接学习笔记

mysql自连接学习笔记
mysql自连接就是自己根据条件先查一些数据然后再返回的值再查一些数据了,这个就是mysql 自连接了,当然利用left join也是可以实现的,下面我们一起来看mysql 自连接用法. mysql的自联结的处理速度比子查询快了很多,所以自联结还是有必要学习的,普通的sql子查询语句,代码如下: SELECT `id`,`bic` FROM `biao` WHERE `id`=(SELECT `id` FROM `biao` WHERE `id`='9696e'); mysql的自联结sql语句,代码如下: SELEC...

MySQL给用户加库操作权限sql语句

MySQL给用户加库操作权限sql语句
下面我来给大家总结一些关于MySQL给用户加库操作权限sql语句,这些对于我给mysql用户授权提供了很大方便,并且这些语句只有root或超级管理员才可以操作. 语法如下,代码如下:GRANT ALL PRIVILEGES ON `DB_NAME`.* TO 'USER_NAME'@'HOST' WITH GRANT OPTION; 例,grant 普通数据用户,查询、插入、更新、删除数据库中所有表数据的权利,代码如下: grant select on testdb.* to common_user@'%' grant insert on t...

MySQL查询语句IN条件值排序问题

MySQL查询语句IN条件值排序问题
以前很是纠结一个问题就是IN查找出来的值怎么排序呢,后来gg,bb了一会发现其实mysql in排序很简单,下面我整理一下相关实例供大家参考. 假如你一个表如下所示: id name 1 张三 2 李四 3 王五 我们一般查询多条数据的时候,条件一般是某个区间,如:>, <, between and, IN,代码如下: SELECT * FROM table_name WHERE id IN (2,1,3); 上面这条SQL是查询id是2,1,3的数据,假如你只是想查询出来数据而已,则...

mysql sql 语句插入多行记录简单方法

mysql sql 语句插入多行记录简单方法
在mysql插入记录我们使用insert into,但要插入多条记录也是使用insert into或其它方法遍历执行insert into了,下面我们一起来看看. 正常我们用sql执行:INSERT INTO `tabale` (`name`) VALUE (‘name’) 如果用php的执行这样的sql需要循环的,所以用下面执行一条sql语句插入多行记录: INSERT INTO `tabale` (`name`) VALUE (‘name’),(‘name’),(‘name’),(‘name’) //phpfensi.com 你想一次插入多少条添加多少条,如...

MySQL中两表UNION查询实例介绍

MySQL中两表UNION查询实例介绍
在mysql中UNION查询就是联合多表查询了,我们这里来给大家普及关于UNION查询语法用法与性能比较,希望对大家会有所帮助。 一,union查询用法 union查询比较简单,就好像把两张表合并了,字段也合成一块. 假如是:select * from table1, table2 的话,两个的相同的字段不会合并但 select a1 from table1 union select a1 from table2 这样的话就可以把两个表的a1合成一个,上面不知道你看明白了,没有我们接着看实...

mysql中ifnull与nullif 函数用法

mysql中ifnull与nullif 函数用法
ifnull与nullif函数在mysql中怎么用有什么区别呢,这个一不小心还以为写反了呢,其实不然,我们一起来看看这两个函数的用法吧. IFNULL(expr1,expr2):假如expr1 不为 NULL,则 IFNULL() 的返回值为 expr1;否则其返回值为 expr2,IFNULL()的返回值是数字或是字符串,具体情况取决于其所使用的语境. mysql> SELECT IFNULL(1,0);    -> 1    mysql> S...

mysql查询区分大小sql语句小结

mysql查询区分大小sql语句小结
mysql区别大小写我们只要在字段创建时这样写name varchar (20) binary,然后查询时这样写binary `user`=’www.phpfensi.com’即可解决,主要用到binary. 公司网站有需求对用户名验证要验证大小写,其实刚开始他注册的时候就就都是大小写,所以没有必要做大小写验证了,但是现在要登陆的验证大小写,那在注册的时候也要对此进行验证. 但是MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作...