我正在尝试更新我的 sql server 2008 r2 网络版数据库中的行。我需要使用一个已经在行中的字段并连接?该字段转换为同一行中另一个字段中的字符串。
这是一个房地产数据库,我有一个名为 mlsnumber 的列,我需要将 mlsnumber 字段用作另一列中字符串的一部分,同一行称为 photoname。
在这种情况下 mlsnumber =1234567,我需要添加/更新行 photoname=photo
+mlsnumber+'-01.jpg' (photo1234567-01.jpg)
非常感谢任何帮助。
肯
最佳答案
假设表叫做照片
update photos set photoname = 'photo' + mIsnumber + '-01.jpg'
如果 misnumber 不是 varchar 你可以做
update photos set photoname = 'photo' + cast(mIsnumber as varchar(10)) + '-01.jpg'
如果 misnumber 为 null 那么结果为 null 所以它可能是
update photos set photoname = 'photo' + coalesce(cast(mIsnumber as varchar(10)),'') + '-01.jpg'
如果您希望过滤您更新的记录,您还可以添加一个 where 子句。
此外,如果情况总是如此,您可以考虑使用 View 来检索数据,而不是将数据存储在表中,或者使用表中的计算字段。
关于sql - Tsql,有没有办法使用行中的现有字段作为同一行中另一个字段中字符串的一部分来更新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18418971/