雷达智富

首页 > 内容 > 网页技术 > 正文

网页技术

数据库常用语句批量修改执行方法

2021-11-19 18

查询列出表中某个字段相同值

select * from biao where pinyin in (select pinyin from biao group by pinyin having count(pinyin) > 1)

批量修改数据库某个表中的字段中的值

update 表名 set 字段名=replace(字段名,'替换的','替换后的');

修改ID起始值

alter table qb_alonepage AUTO_INCREMENT=113148

判断某个字段给对应其他字段清空值

update 表 set 清空的字段=null where wxid='wxid值'

字段复制

update 表名 set 复制后的字段=复制的字段

abc_biao  模糊查询 content 当content有  &auto=0&vid=ddddddd 值的时候 把ddddddd传值到 qqvid字段  同时赋值给leixing字段 qqvid值

UPDATE abc_biao
SET qqvid='ddddddd',leixing='ddddddd'
WHERE content LIKE '%ddddddd%'

单项查询赋值,查询A字段值为abc,给abc对应的B字段赋值

UPDATE 表 SET B='赋值' WHERE A LIKE 'abc'

查询A字段为空给B字段赋值

UPDATE biao SET b='值' WHERE a LIKE ''

清理5之前ID帖子

delete from bbs_content where id<5

清理ID5之后的帖子

delete from bbs_content where id>5

清理ispic=0的帖子

delete from bbs_content where ispic=0

查询A字段包含style,清空字段包含style的记录

UPDATE biao SET A='空值' WHERE A LIKE '%style%'

清除标题中含有报价的内容注意(会删除帖子内容)

DELETE FROM Content Where [标题] like '%报价%'

创建用户

INSERT INTO `qb_memberdata`( `password`,`password_rand`,`yz`,`username`,groupid) VALUES( '471532348c63f43360a88a43491bc82c','30722321','1','sushiba',8);

跨站调用数据

{qb:tag name="news" sql="SELECT * FROM 数据库.表 ORDER BY id DESC LIMIT 0,5"}{$rs.title}{/qb:tag}

随机更新数据库字段赋值

update sushijiameng_comment set touxiang= floor(1 + rand()*108)

指定数据库值随机替换

update sushijiameng_comment set touxiang=ceil(rand()*108) where touxiang='108';

给表字段值

INSERT INTO 表 (字段一, 字段二) VALUES ('值1', '值2')

批量给表字段赋值

INSERT INTO 表 (字段)
VALUES
 ('值1'),
 ('值2'),
 ('值3');

执行数据库排序

ALTER TABLE 表名 ORDER BY id ASC/DESC

数据表补齐字段

ALTER TABLE `表` ADD `字段` 字段类型 NOT NULL ;

数据库损坏的修复方法

REPAIR TABLE 数据表名

正则去除中括号(符号)及里面包含的内容

$rs[名称] = preg_replace("/\(.*\)/","", $rs[名称]);

小技巧:可把[ ]改为其他符号应用在需要的地方

正则去除-以及后面的字符串

$rs[名称] = preg_replace('/(.*)-{1}([^\/]*)/i', '$1', $rs[名称]);

SQL的四种匹配模式

SQL提供了四种匹配模式:% _ [ ] [^ ]

1. %

%表示模糊匹配0或多个字符,如以下查询语句:

select * from user where name like '%三%'; 这个语句将会把name中带有“三”的信息全部查找出来

select * from user where name like '%三' ; 这个语句将会把name中最右边带有“三”的信息全部查找出来

select * from user where name like '三%' ; 这个语句将会把name中最左边带有“三”的信息全部查找出来

2. _

_表示任意单个字符,如以下语句:

select * from user where name like '_三_'; 这个语句会匹配出“二三四”

select * from user where name like '__三'; 这个语句会匹配出“一二三”

3. [ ]

[ ]表示括号内所列字符中的一个(类似于正则表达式),如以下语句:

select * from user where name like '老[大二三]'; 如果都存在的话将找出“老大”、“老二”、“老三”

同时支持缩写0-9、a-z等。

4.[^ ]

类似于正则表达式,将括号内的元素排除,如以下语句:

select * from user where name like '[0-3]个' 将会检索出除了“0个”,“1个”,“2个”,“3个”

文章评论