SQL Server - объединяйте таблицы, чтобы несколько строк стали одной строкой

Для тех, кто использует nginx и имеет белый экран даже для файла с <?php echo 123;. В моем случае у меня не было этой опции для PHP в файле конфигурации nginx:

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

Этот параметр не был в файле fastcgi_params, поэтому PHP не работал и ошибок не было в журналах.

0
задан SVill 11 March 2019 в 14:16
поделиться

1 ответ

Вы можете использовать условное агрегирование:

select t1.*, t2.jobkey_1, t2.jobvalue_1, t2.jobkey_2, t2.jobkey_2
from table1 t1 left join
     (select t2.employeename, 
             max(case when seqnum = 1 then jobkey end) as jobkey_1,
             max(case when seqnum = 1 then jobvalue end) as jobvalue_1,
             max(case when seqnum = 2 then jobkey end) as jobkey_2,
             max(case when seqnum = 2 then jobvalue end) as jobvalue_2,
      from (select t2.*, row_number() over (partition by employeename order by rowid) as seqnum
            from table2 t2
           ) t2
       group by employeename
      ) t2;

Примечание. По-видимому, вы используете имя сотрудника в качестве ключа соединения между таблицами. Вы действительно должны использовать идентификатор сотрудника.

0
ответ дан Gordon Linoff 11 March 2019 в 14:16
поделиться
Другие вопросы по тегам:

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