如何从phpmyadmin同时运行选择和更新查询
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从phpmyadmin同时运行选择和更新查询相关的知识,希望对你有一定的参考价值。
我有一个场景。我有一个名为card_no的字段。有些条目是空白的。我们不想处理这个问题。有些有16位整数,有些有我需要的正确数据。我需要的是我想选择所有16位整数的记录,并用xxxxxxxxxxxxLAST4DIGITS(信用卡格式)替换它们。我可以通过mysql做到这一点吗?
答案
您不必选择行。
您可以将UPDATE应用于与条件匹配的行的子集。
UPDATE scenario
SET card_no = CONCAT('xxxxxxxxxxxx', RIGHT(card_no, 4))
WHERE LENGTH(card_no) = 16
另一答案
是。但你必须将此字段设为char(4)
,因为您可能希望将数字0002存储为0002而不仅仅是2.所以我首先更新字段的数据类型,然后根据需要更新字段条目。
-- update datatype
alter table `cards`
modify column `card_no` char(4);
-- update values in card_no
update `cards`
set `card_no` = LPAD(if(length(`card_no`) > 4, substr(`card_no`, -4, 4), `card_no`), 4, '0')
where `card_no` is not null;
您可以在应用程序代码端执行“xxx”附加操作,否则将占用db中的额外内存。
以上是关于如何从phpmyadmin同时运行选择和更新查询的主要内容,如果未能解决你的问题,请参考以下文章