Personelin takip edildiği bir tablom var, tablonun şekli 1.tablodaki gibi benim istediğim altındaki 2.tabloda yer alan ilgili tarihte yer almayan personeli sorgu ile alabilmek.
Diğer bir değişle ilgili tarihte hareket görmeyen personeli tespit edebilmek. Bu arada mysql veri tabanı kullanıyorum
Yardımınız ve ilginiz için teşekkürler.
Tablonun Kendisi
Sicil No Tarih
1 01.01.2014
2 01.01.2014
1 02.01.2014
1 03.01.2014
2 04.01.2014
2 05.01.2014
2 06.01.2014
Sorgu sonrası tablo
Sicil No Tarih
2 02.01.2014
2 03.01.2014
1 04.01.2014
1 05.01.2014
1 06.01.2014
Kod: Tümünü seç
SELECT gc.personelid,
p.ad,
p.soyad,
gc.giristarihi,
CASE
WHEN WEEKDAY(gc.giristarihi)=1 then 'Salı'
when WEEKDAY(gc.giristarihi)=2 then 'Çarşamba'
when WEEKDAY(gc.giristarihi)=3 then 'Perşembe'
when WEEKDAY(gc.giristarihi)=4 then 'Cuma'
when WEEKDAY(gc.giristarihi)=5 then 'Cumartesi'
when WEEKDAY(gc.giristarihi)=6 then 'Pazar'
when WEEKDAY(gc.giristarihi)=0 then 'Pazartesi'
END AS Gun
FROM
gc_giriscikis gc
JOIN personel p ON (p.id = gc.personelid)
where p.durum ='Aktif' and p.id not in (SELECT gc.personelid FROM gc_giriscikis gc JOIN personel p ON (p.id = gc.personelid) where p.durum ='Aktif')
group by 2,1,4,5