SQL - 使用 OR 语句从 2 列中填充值的自定义列
Posted
技术标签:
【中文标题】SQL - 使用 OR 语句从 2 列中填充值的自定义列【英文标题】:SQL - Custom Column to Fill with values from 2 columns using an OR statement 【发布时间】:2021-09-09 01:15:19 【问题描述】:这是当前版本的低保真表
ID | Custom column | Value | Value2 |
---|---|---|---|
1 | X | ||
2 | Y |
想要像这样使用 X 或 Y 填充自定义列:
ID | Custom column | Value | Value2 |
---|---|---|---|
1 | X | X | |
2 | Y | Y |
【问题讨论】:
SQL Server mysql - 请更正您的标签。 根据问题指南,请展示您的尝试并告诉我们您发现了什么(在本网站或其他地方)以及为什么它不能满足您的需求。 请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:您可以简单地连接值,如下例所示:
SELECT
Title,
FirstName,
MiddleName,
LastName,
Title + ' ' + FirstName + ' ' + MiddleName + ' ' + LastName as MailingName
FROM Person.Person
示例来自:https://www.mssqltips.com/sqlservertip/2985/concatenate-sql-server-columns-into-a-string-with-concat/
如果您需要它是字符串以外的其他类型,您始终可以将其转换为正确的类型。
【讨论】:
【参考方案2】:作为select
,你可以使用coalesce()
:
select t.*,
coalesce(value, value2) as custom_column
from t;
作为update
:
update t
set custom_column = coalesce(value, value2);
【讨论】:
以上是关于SQL - 使用 OR 语句从 2 列中填充值的自定义列的主要内容,如果未能解决你的问题,请参考以下文章