MySQL 特殊语句
2013-11-05 11:52
183 查看
转自:http://www.phpweblog.net/kiyone/archive/2007/05/11/1195.html
例子:将cdb_pms表subject字段中的Welcom to替换成 欢迎光临
----------------------------------------------------------
UPDATE `cdb_pms`
SET `subject` = REPLACE(`subject`, 'Welcome to', '欢迎光临')
WHERE INSTR(`subject`,'Welcome to') > 0
----------------------------------------------------------
替换cdb_posts表的message字段,将“viewthread.php?tid=3989”替换成“viewthread.php?tid=16546”
----------------------------------------------------------
UPDATE `cdb_posts`
SET `message`= REPLACE(`message`, 'viewthread.php?tid=3989', 'viewthread.php?tid=16546')
WHERE INSTR(`message`,'viewthread.php?tid=3989') > 0 ;
----------------------------------------------------------
删除所有的空格
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = TRIM(`pro_pub_time`)
----------------------------------------------------------
删除所有饱含'['或者']'或者'.'的字符
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '[','') WHERE INSTR(`pro_pub_time`,'[') > 0
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, ']','') WHERE INSTR(`pro_pub_time`,']') > 0
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '.','-') WHERE INSTR(`pro_pub_time`,'.') > 0
----------------------------------------------------------
替换所有含中文'-'的为英文'-'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '-','-') WHERE INSTR(`pro_pub_time`,'-') > 0
----------------------------------------------------------
将所有的年月都替换成'-'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '年','-') WHERE INSTR(`pro_pub_time`,'年') > 0
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '月','-') WHERE INSTR(`pro_pub_time`,'月') > 0
----------------------------------------------------------
将所有'2005-04-'这种类型的替换成'2005-04-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT( `pro_pub_time`, '01') WHERE SUBSTRING_INDEX( `pro_pub_time`, '-', -1) = '' AND LENGTH(`pro_pub_time`) > 0 AND LENGTH(`pro_pub_time`) > 5
----------------------------------------------------------
将所有'2005-'这种类型替换成'2005-01-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT( `pro_pub_time`, '01-01') WHERE INSTR(`pro_pub_time`,'-') > 0 AND LENGTH(`pro_pub_time`) = 5
----------------------------------------------------------
将所有 饱含'-',但是位数小于8的改成追加'-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT( `pro_pub_time`, '-01') WHERE INSTR(`pro_pub_time`,'-') > 0 AND LENGTH(`pro_pub_time`) < 8
----------------------------------------------------------
将所有'2005'这样的改成'2005-01-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT(`pro_pub_time`,'-01-01') WHERE INSTR(`pro_pub_time`,'-') = 0 AND LENGTH(`pro_pub_time`) = 4
----------------------------------------------------------
最后将所有'2005-01-01'格式化成'2005年01月'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = DATE_FORMAT(`pro_pub_time`,'%Y年%m月') WHERE INSTR(`pro_pub_time`,'-') > 0
----------------------------------------------------------
例子:将cdb_pms表subject字段中的Welcom to替换成 欢迎光临
----------------------------------------------------------
UPDATE `cdb_pms`
SET `subject` = REPLACE(`subject`, 'Welcome to', '欢迎光临')
WHERE INSTR(`subject`,'Welcome to') > 0
----------------------------------------------------------
替换cdb_posts表的message字段,将“viewthread.php?tid=3989”替换成“viewthread.php?tid=16546”
----------------------------------------------------------
UPDATE `cdb_posts`
SET `message`= REPLACE(`message`, 'viewthread.php?tid=3989', 'viewthread.php?tid=16546')
WHERE INSTR(`message`,'viewthread.php?tid=3989') > 0 ;
----------------------------------------------------------
删除所有的空格
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = TRIM(`pro_pub_time`)
----------------------------------------------------------
删除所有饱含'['或者']'或者'.'的字符
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '[','') WHERE INSTR(`pro_pub_time`,'[') > 0
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, ']','') WHERE INSTR(`pro_pub_time`,']') > 0
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '.','-') WHERE INSTR(`pro_pub_time`,'.') > 0
----------------------------------------------------------
替换所有含中文'-'的为英文'-'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '-','-') WHERE INSTR(`pro_pub_time`,'-') > 0
----------------------------------------------------------
将所有的年月都替换成'-'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '年','-') WHERE INSTR(`pro_pub_time`,'年') > 0
UPDATE `es_product` SET `pro_pub_time` = REPLACE(`pro_pub_time`, '月','-') WHERE INSTR(`pro_pub_time`,'月') > 0
----------------------------------------------------------
将所有'2005-04-'这种类型的替换成'2005-04-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT( `pro_pub_time`, '01') WHERE SUBSTRING_INDEX( `pro_pub_time`, '-', -1) = '' AND LENGTH(`pro_pub_time`) > 0 AND LENGTH(`pro_pub_time`) > 5
----------------------------------------------------------
将所有'2005-'这种类型替换成'2005-01-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT( `pro_pub_time`, '01-01') WHERE INSTR(`pro_pub_time`,'-') > 0 AND LENGTH(`pro_pub_time`) = 5
----------------------------------------------------------
将所有 饱含'-',但是位数小于8的改成追加'-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT( `pro_pub_time`, '-01') WHERE INSTR(`pro_pub_time`,'-') > 0 AND LENGTH(`pro_pub_time`) < 8
----------------------------------------------------------
将所有'2005'这样的改成'2005-01-01'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = CONCAT(`pro_pub_time`,'-01-01') WHERE INSTR(`pro_pub_time`,'-') = 0 AND LENGTH(`pro_pub_time`) = 4
----------------------------------------------------------
最后将所有'2005-01-01'格式化成'2005年01月'
----------------------------------------------------------
UPDATE `es_product` SET `pro_pub_time` = DATE_FORMAT(`pro_pub_time`,'%Y年%m月') WHERE INSTR(`pro_pub_time`,'-') > 0
----------------------------------------------------------
相关文章推荐
- mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符,可使用本函数来预防数据库攻击。
- mysql sql语句中的特殊字符处理
- mysql特殊语句学习
- MySql创建临时表和特殊关联语句
- MySQL下划线特殊字符(Like 语句)
- mysql的sql语句特殊处理语句集合
- mysql一些特殊语句
- mysql的一些特殊语句
- mysql的sql语句特殊处理语句总结(必看)
- mysql 特殊语句
- mysql 语句大全
- 笔记:mysql修改数据表表名sql语句。
- PowerDesigner15在win7-64位系统下对MySQL 进行反向工程以及建立物理模型产生SQL语句步骤图文傻瓜式详解
- MySQL 高级语句
- 【MySQL】SELECT语句 计算字段 数据处理函数 汇总函数 分组数据 子查询
- mysql sql常用语句大全
- Linux下C语言执行MySQL语句
- Mysql操作语句-外键管理
- MYSQL 数据库 创建库和删除库的语句
- MySQL查询语句