一列中的多个值 sql
Multiple value in a column sql
我正在开发 SSIS 包。这个包从 verdure 文件中加载信息。该软件包运行良好,但我的问题出在名为 'SpecialUnit' 的专栏之一中。
在表格中,客户可以 select 23 个值,所有这些值都记录为逗号分隔。在我的 SSIS 中,我为所有 23 个值创建了不同的字段,我希望所有这些值在 select 的人使用它们时显示 1。
例子。
CASE WHEN sp.CodeText = 'Transit Dept.'
THEN 1
ELSE 0
END AS FollowUpByTransit,
我有一个 table 分隔逗号分隔符,但在加载时我没有想要的值,即 1 或 0。
你能否将你的 23 个字段作为计算字段,然后在每个字段的方程式上你可以使用类似下面的内容
As case when CodeText like '%Transit Dept%' then 1 else 0 end as FollowUpByTransit
因此您需要使用 like 运算符,因此忽略逗号和其他值。
如果你们的暗语可能有点相似,可以按照HABO提出的思路,就是下面这样的东西
As case when (','+CodeText+',') like '%,Transit Dept,%' then 1 else 0 end as FollowUpByTransit
希望对您有所帮助。
我正在开发 SSIS 包。这个包从 verdure 文件中加载信息。该软件包运行良好,但我的问题出在名为 'SpecialUnit' 的专栏之一中。
在表格中,客户可以 select 23 个值,所有这些值都记录为逗号分隔。在我的 SSIS 中,我为所有 23 个值创建了不同的字段,我希望所有这些值在 select 的人使用它们时显示 1。 例子。
CASE WHEN sp.CodeText = 'Transit Dept.'
THEN 1
ELSE 0
END AS FollowUpByTransit,
我有一个 table 分隔逗号分隔符,但在加载时我没有想要的值,即 1 或 0。
你能否将你的 23 个字段作为计算字段,然后在每个字段的方程式上你可以使用类似下面的内容
As case when CodeText like '%Transit Dept%' then 1 else 0 end as FollowUpByTransit
因此您需要使用 like 运算符,因此忽略逗号和其他值。
如果你们的暗语可能有点相似,可以按照HABO提出的思路,就是下面这样的东西
As case when (','+CodeText+',') like '%,Transit Dept,%' then 1 else 0 end as FollowUpByTransit
希望对您有所帮助。