Несколько центр столбца в T-SQL

Ваш пакет Spark не включает скомпилированный код Spark. Вот почему вы получили сообщение об ошибке из этих сценариев spark-submit и spark-shell.

Вы должны загрузить одну из готовых версий в разделе «Выберите тип пакета» на странице загрузки Spark .

14
задан John Saunders 3 June 2009 в 21:59
поделиться

2 ответа

Rewrite используя MAX (CASE ...) и GROUP BY:

select 
  field1
, [1] = max(case when RowID = 1 then field2 end)
, [2] = max(case when RowID = 2 then field2 end)
, [3] = max(case when RowID = 3 then field2 end)
, [4] = max(case when RowID = 4 then field2 end)
from (
  select 
    field1
  , field2
  , RowID = row_number() over (partition by field1 order by field2)
  from tblname
  ) SourceTable
group by 
  field1

Оттуда вы можете добавить field3, field4 и т. д.

12
ответ дан 1 December 2019 в 13:59
поделиться

Я не уверен, используете ли вы MS SQL Server, но если вы ... Возможно, вы захотите взглянуть на функциональность CROSS APPLY движка. По сути, это позволит вам применить результаты UDF с табличным значением к набору результатов. Это потребует от вас поместить ваш сводный запрос в набор результатов с табличным значением.

http://weblogs.sqlteam.com/jeffs/archive/2007/10/18/sql-server-cross-apply.aspx

1
ответ дан 1 December 2019 в 13:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: