【问题标题】:scala add a string in the mapperscala在映射器中添加一个字符串
【发布时间】:2017-02-24 03:03:39
【问题描述】:

您好,我有以下代码获取每一列并生成一个用逗号分隔的字符串。

val selectCols    = t.columns.map( c => cmap.getOrElse(c.name, c.name)).mkString(",")

Output: store_id,date_id,user_id,data,other_column

但是我想修改这个map函数得到如下字符串:

t.store_id,t.date_id,t.user_id,t.data,t.other_column

感谢任何帮助。

【问题讨论】:

  • 您的问题不清楚。这两个输出有什么区别? t 是在他们前面的事实?
  • 什么是cmap
  • t 是什么? whar 是columns ?
  • 两者的区别是显而易见的。作者正在生成一个 SQL 片段,并且想要以别名“t.”为前缀的列名,以便创建一个查询,例如“SELECT t.one, u.two FROM table1 as t, table2 as u WHERE... ”。在不知道“cmap”是什么的情况下如何帮助他/她也很明显。

标签: string scala dictionary functional-programming


【解决方案1】:
val selectCols    = t.columns.map( c => cmap.getOrElse(c.name, c.name))
.map(c => s"t.$c")
.mkString(",")

【讨论】:

  • 这正是我想要的。谢谢,
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-07-28
  • 1970-01-01
  • 2023-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多