【发布时间】:2018-01-08 15:13:15
【问题描述】:
我正在尝试通过在数据湖分析中使用 U-SQL 将一列拆分为两列。在 SQL 中可以这样做:
,CASE WHEN [Total] like '%-%'
THEN TRIM(LEFT([Total],CHARINDEX('-',[Total]) - 1)) END AS [TotalLeft]
,TRIM(REPLACE(SUBSTRING([Total],CHARINDEX('-',[Total]),LEN([Total])),'-','')) AS TotalRight
我在U-SQL中尝试过类似的东西,但是U-SQL中似乎不存在LEFT。
([Total] LIKE "%-%") ? Left([Total].IndexOf("-"), 1).Trim : 0 AS TotalLeft,
我阅读了有关使用数组和 EXPLODE 的信息,但这似乎只是将其拆分为更多行而不是列。
此外,我正在考虑使用 EXTRACT 并将分隔符设置为“-”,但这似乎也不是一个选项。
有人对如何有效解决这个问题有任何想法吗?谢谢!
【问题讨论】:
标签: c# sql split azure-data-lake u-sql