我想更新 SQL 表中的 1 列。示例:列中的当前值是这样的
2013/09/pizzalover.jpg
2013/10/pasta.jpg
现在我想像这样更新整个专栏:www.mypizza.com/2013/09/pizzalover.jpg 有什么办法可以做到这一点吗?提前致谢
我想更新 SQL 表中的 1 列。示例:列中的当前值是这样的
2013/09/pizzalover.jpg
2013/10/pasta.jpg
现在我想像这样更新整个专栏:www.mypizza.com/2013/09/pizzalover.jpg 有什么办法可以做到这一点吗?提前致谢
您可以使用语句简单地更新列
update TableName set ColumnName = 'www.mypizza.com/' + ColumnName
如果您使用的是 MYSql,则可以使用concat()
as :
update tableName set columnName= CONCAT('www.mypizza.com/', columnName);
如果您使用的是 oracle,则可以使用连接运算符 '||' 作为 :
update tableName set "columnName"='www.mypizza.com/'||"columnName";
在 SQL Server 中,您可以将+
字符串连接用作:
update tableName set name='www.mypizza.com/'+columnName;
你的意思是这样吗?:
SELECT 'www.mypizza.com/' + ColumnName AS ColumnName FROM TableName
根据您的应用程序环境的其余部分,可能有更好的方法来完成此操作。但就仅使用 SQL 将静态文本添加到 SELECT 语句中的列而言,您可以直接在语句中连接文本。
或者,如果您想更新列值,如下所示:
UPDATE TableName SET ColumnName = 'www.mypizza.com/' + ColumnName
同样的原理,只是使用 aUPDATE
而不是 a SELECT
,这将修改底层数据,而不是仅仅修改数据的视图。
首先获取存储在数据库中的信息,然后对其进行编辑,您可以这样做:
<?php
$query = "SELECT * FROM `blog-posts` WHERE `id` = 11";
$result = mysql_query($query);
$post = mysql_fetch_array($result);
$title = $post['title'];
$title .= "aapje";
echo $title
?>
然后像往常一样更新您的数据库:
$updateq = "UPDATE `blog-posts` SET `title` = '$title' WHERE `id` = 11";
OP 没有指定他们使用的是哪个 DBMS。以下是 Postgres 通过添加前缀来更新文本列(使用 PostgreSQL v11 测试):
UPDATE my_table
SET column_1 = 'start_text_' || column_1
WHERE column_1 LIKE 'prefix_%'
;