【发布时间】:2019-02-07 07:02:36
【问题描述】:
我有来自 SQL Server 的数据,需要在 Apache Spark (Databricks) 中进行操作。
在 SQL Server 中,此表的三个键列使用区分大小写的 COLLATION 选项,因此这些特定列区分大小写,但表中的其他列不区分大小写。这些列是来自供应商应用程序的简短字母数字标识符,我们必须能够在谓词和连接条件中以区分大小写的方式使用它们,同时能够以不区分大小写的方式使用其他列。
表格已导出为 CSV。
除了使用 lower 和 upper 函数之外,有没有办法在 DataFrame 中混合区分大小写和不区分大小写的列比较?我也可以将此 CSV 导入 Databricks 表,但这似乎没有在元数据级别为连接提供类似的排序选项。
谢谢。
【问题讨论】:
-
我不认为有这样的选项(除非您想使用正则表达式进行比较:
col.rlike("(?i)^VaLue$")。我想最有效的方法是为每个不区分大小写的大写列创建副本值并根据它们进行比较。
标签: apache-spark dataframe apache-spark-sql databricks