olarak değiştirin. Bir org çizelgesi çizmek için çalışan verilerini bir SQL Server veritabanından alıyorum. Şirketimin birçok departmanı var (bence her şirket var). Sadece belirli bir departmanı bir seferde çekmek istedim.Denetim amortisörü nodunu
Veritabanımızda, her departman müdürü de CEO veya başkanlığa rapor verir .. Bir bölüm başkanı için NULL için reportsToEmpId
sütununu (çalışma zamanında) nasıl değiştirebilirim? Bölüm başkanının ebeveyni bu bölüme ait değilse. Sadece deptId = 1
çekin ve Jim
dept1
olmadığından
empId, name, reportsToEmpId, deptId
100, John, 99, 1
101, Mary, 100, 1
102, Carol, 100, 1
99, Jim, null, 2
:
İşte benim Raporlar tablo yapıdır. John
reportsToEmpId
sütununu NULL
olarak dinamik olarak değiştirebilir miyim?
select fields I need
from reportsTo r
join employee e on r.empId = e.empId
join groupHightlight h on ...
where deptId=1
Tmp tablosunu kullanmayı denedim ancak çok hantal görünüyor.
Orijinal çıkışı: Burada
empId, name, reportsToEmpId, deptId
100, John, 99, 1
101, Mary, 100, 1
102, Carol, 100, 1
benim beklenen çıkışı: (CEO'ya rapor veren herkesi çekmek istiyorum Ancak, ben, çünkü aksi takdirde, orijinal masada herhangi bir değişikliğe gerek duyulmaması sonra tercih Bölümler arasında "bağlantı" kaybetti).
empId, name, reportsToEmpId, deptId
100, John, NULL, 1
101, Mary, 100, 1
102, Carol, 100, 1
? Ve sadece sorgunuzdaki üç tablodan biri için belirsiz bir bilgi verdiniz. –
Merhaba Sean, teşekkürler. Sorumu güncelledim. (Bu soruya cevabımı :-) –