【发布时间】:2021-12-27 02:53:07
【问题描述】:
我是 python 的新手,使用 sql 更新表。我想问一下如何使用 SQL 更新单列中的某些值组。请看下面的例子:
| id |
|---|
| 123 |
| 999991234 |
| 235 |
| 789 |
| 200 |
| 999993456 |
我需要将缺少的前缀“99999”添加到没有“99999”的记录中。 id 列默认为整数数据类型。我已经尝试了 sql 语句,但是我尝试使用 cast 语句的数据类型之间存在冲突:
update tablename
set id = concat('99999', cast(id as string))
where id not like '99999%';
【问题讨论】:
-
您使用的是什么关系型数据库?
concat()提示是MySQL,它会自动将字符串转成整数。 -
SET id = CONCAT('99999', id) -
``` UPDATE tablename SET id = CONCAT('99999', id) WHERE id NOT LIKE '99999%'; ``` 可以在任何最新版本的mysql中工作
-
我正在使用 BigQuery @Barmar
标签: python google-bigquery sql-update sqldatatypes