sql >> Databáze >  >> RDS >> Sqlserver

Sql Dotaz pro seskupení dat ze dvou tabulek

Toto:

select final.deptId, d.deptName,
  e3.employeename + ',' + cast(e3.salary as varchar) employee
from employee e3
left join (
  select e1.id, e1.deptId from employee e1
  left join employee e2
  on e1.deptId = e2.deptId and e1.id > e2.id
  where e2.id is null
) final on e3.id = final.id
left join department d on d.id = final.deptId

Výsledky v:

+--------+----------+-------------+
| DEPTID | DEPTNAME |  EMPLOYEE   |
+--------+----------+-------------+
|      1 | IT       | John,10000  |
|        |          | Bob,15000   |
|      2 | CSE      | Akon,12000  |
|        |          | Smith,20000 |
+--------+----------+-------------+

Všimněte si, že "prázdné" hodnoty jsou ve skutečnosti vyplněny null hodnoty.

Pokud s tím máte nějaký problém, dejte mi vědět.




  1. MySQL větší nebo rovno operátor ignoruje svou povinnost nebo rovnou povinnost

  2. Jak říci vytvořit proceduru, pokud neexistuje v MySQL

  3. dotaz s počtem poddotazů, vnitřním spojením a skupinou

  4. 5 způsobů, jak vrátit řádky, které obsahují malá písmena v SQL Server