使用SQL/HiveQL拆分列中的数据
我有一个大学项目,我需要对我选择的一个大数据集做一些简单的分析,我们将在Hadoop系统中运行它。我选择使用Hive是因为我基本上没有数据库方面的经验,但我喜欢Hive 无论如何,我有一个国际象棋数据集,我能够提取一些感兴趣的列,比如开局动作的名称,并找出它们发生的频率。诸如此类的事情 我想看看每场比赛的前几步,这就引出了我的问题。所有移动的符号存储在名为使用SQL/HiveQL拆分列中的数据,sql,hadoop,split,hive,hiveql,Sql,Hadoop,Split,Hive,Hiveql,我有一个大学项目,我需要对我选择的一个大数据集做一些简单的分析,我们将在Hadoop系统中运行它。我选择使用Hive是因为我基本上没有数据库方面的经验,但我喜欢Hive 无论如何,我有一个国际象棋数据集,我能够提取一些感兴趣的列,比如开局动作的名称,并找出它们发生的频率。诸如此类的事情 我想看看每场比赛的前几步,这就引出了我的问题。所有移动的符号存储在名为移动的列中,如下所示: 此列位于名为chess\u game的.csv文件中 我该如何提取,比如说,前4个移动到一个名为opening\u
移动
的列中,如下所示:
此列位于名为chess\u game
的.csv文件中
我该如何提取,比如说,前4个移动到一个名为opening\u moves
的新表中
提前感谢您的建议。您可以使用拆分功能拆分移动字符串。像这样:
select rating,
moves[0] as first,
moves[1] as second,
moves[2] as third,
moves[3] as fourth
(
select rating, split(moves, ' ') as moves from your_table
) s
;
移动是否以空格分隔?你能把它贴成文字而不是图片吗?前4个动作是d4、d5、c4、c6或者什么?@leftjoin我现在正在工作,似乎不允许访问Dropbox之类的东西。稍后我将尝试添加。