标签 mysql 下的文章

1SQL运算符例子实际查询条件
eq=$map['id'] = array('eq',100);等效于:$map['id'] = 100;
neq!=$map['id'] = array('neq',100);id != 100
gt>$map['id'] = array('gt',100);id > 100
egt>=$map['id'] = array('egt',100);id >= 100
lt<$map['id'] = array('lt',100);id < 100
elt<=$map['id'] = array('elt',100);id <= 100
likelike$map['username'] = array('like','li%');username like 'li%'
betweenbetween and$map['id'] = array('between','1,8');id BETWEEN 1 AND 8
not betweennot between and$map['id'] = array('not between','1,8');id NOT BETWEEN 1 AND 8
inin$map['id'] = array('in','1,5,8');id in(1,5,8)
not innot in$map['id'] = array('not in','1,5,8');id not in(1,5,8)
and(默认)and$map['id'] = array(array('gt',1),array('lt',10));(id > 1) AND (id < 10)
oror$map['id'] = array(array('gt',3),array('lt',10), 'or');(id > 3) OR (id < 10)
xor(异或)xor两个输入中只有一个是true时,结果为true,否则为false,例子略。1 xor 1 = 0
exp综合表达式$map['id'] = array('exp','in(1,3,8)');$map['id'] = array('in','1,3,8');

注意:exp 不是一个运算符,而是一个综合表达式以支持更复杂的条件设置。exp 的操作条件不会被当成字符串,可以使用任何 SQL 支持的语法,包括使用函数和字段名称。

最近总是看到mysql查询的结果后面抛出错误:

ERROR: 
No query specified

出现此错误是sql不合法原因:

\G后面不能再加分号;,因为\G在功能上等同于加了;,如果再加分号,那么就是;;(2个分号),就会出现SQL语法错误。

#!/bin/sh
rq=`date +%Y%m%d`
# 删除文件夹中一些过期的备份文件
find /back/ -name "*.sql" -mtime +10 |xargs rm -fr
find /back/ -name "*.tar.gz" -mtime +10 |xargs rm -fr
# 备份整个www目录
zip -r /back/wwwback_$rq.tar.gz /apps/www/*
# 备份数据库
mysqldump -uroot -p123456 database > /back/database`date +%Y-%m-%d_%H%M%S`.sql

启动备份只需要使用计划任务执行sh脚本就行,如:

55 23 * * *    /back.sh