MSSQL:在有条件栏填入值与另一列如果空白
这是我想要实现的逻辑:MSSQL:在有条件栏填入值与另一列如果空白
如果“NEW_COLUMN”为空然后拉从“事件”列中的值.. 。否则保留'new_column'中的值
我已经在Python代码中成功编写了它,但是对于SQL来说是新的。
df_EVENT5_6['new_column'] = np.where(df_EVENT5_6['new_column'] == '', df_EVENT5_6['event'], df_EVENT5_6['new_column'])
如何将上述Python代码转换为SQL?
回答:
你正在寻找coalesce()
?
select coalesce(new_column, event) as new_column
回答:
这是如何在MSSQL代替空格:
SELECT REPLACE(new_column, '', event) FROM TABLE
如果你也想照顾空值,那么你可以在同一查询添加ISNULL:
SELECT REPLACE(ISNULL(new_column, event), '', event) FROM TABLE
回答:
假设你试图返回数据,你会在SELECT语句中使用的COALESCE功能,如下图所示:
select [new_column] = coalesce(new_column, event),
[event] = event
from
df_EVENT;
不会有什么COALESCE带参数的优先顺序并返回非空的第一个值。下面这个函数将其评价为CASE表达,所以你可以用你的病情空长字符串修改上面NULL这样:
select [new_column] = case when new_column > '' then new_column else event end
[event] = event
from
df_EVENT;
这是不知道你的数据源。如果您正在从Python进行INSERT,那么您可以保留Python逻辑并将其应用于传递的SQL语句。否则,你可以按照上面列出的方式进行操作。如果你使用SQL Server
Insert into TABLENAME (Column1) (Select ISNULL(new_column, eventcolumn) from TABLENAME)
ISNULL功能检查,这就是如果NEW_COLUMN是空
回答:
试试这个,然后采取eventcolum否则采取新的列值
,或者您也可以使用大小写的值时,SQL的设施。 情况下,当语法是这样的:
时ISNULL(NEW_COLUMN, '')= '' 然后eventcolumn其他NEW_COLUMN结束
以上是 MSSQL:在有条件栏填入值与另一列如果空白 的全部内容, 来源链接: utcz.com/qa/259363.html