Sql Server ile daha önce hiç çalışmadım yavaş yavaş öğrenmeye çabalıyorum. Sorunum Mysql ile aşağıdaki şekilde kullandığım sorgumu Mssql üzerinde denediğim zamana hata alıyorum
SELECT pdkspersonel.sirano,pdkspersonel.sicil,pdkspersonel.adsoyad,
MAX(case when pdksshift.islemtarihi = '''+ tarihler[0]+''' then pdksshift.shift end) AS '''+tarihler[0]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[1]+''' then pdksshift.shift end) AS '''+tarihler[1]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[2]+''' then pdksshift.shift end) AS '''+tarihler[2]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[3]+''' then pdksshift.shift end) AS '''+tarihler[3]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[4]+''' then pdksshift.shift end) AS '''+tarihler[4]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[5]+''' then pdksshift.shift end) AS '''+tarihler[5]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[6]+''' then pdksshift.shift end) AS '''+tarihler[6]+'''
FROM pdkspersonel inner join pdksshift on pdkspersonel.sicil=pdksshift.sicil
WHERE pdkspersonel.departman = '''+departmanCB.text+''' and pdkspersonel.isciktar IS NULL
GROUP BY pdksshift.sicil
ORDER BY pdkspersonel.sirano
denediğim kod
SELECT pdkspersonel.sirano,pdkspersonel.sicil,pdkspersonel.adsoyad,
MAX(case when pdksshift.islemtarihi = @tarihler1 then pdksshift.shift end) AS @tarihler1,
MAX(case when pdksshift.islemtarihi = @tarihler2 then pdksshift.shift end) AS @tarihler2,
MAX(case when pdksshift.islemtarihi = @tarihler3 then pdksshift.shift end) AS @tarihler3,
MAX(case when pdksshift.islemtarihi = @tarihler4 then pdksshift.shift end) AS @tarihler4,
MAX(case when pdksshift.islemtarihi = @tarihler5 then pdksshift.shift end) AS @tarihler5,
MAX(case when pdksshift.islemtarihi = @tarihler6 then pdksshift.shift end) AS @tarihler6,
MAX(case when pdksshift.islemtarihi = @tarihler7 then pdksshift.shift end) AS @tarihler7
FROM pdkspersonel inner join pdksshift on pdkspersonel.sicil=pdksshift.sicil
WHERE pdkspersonel.departman = @departman and pdkspersonel.isciktar IS NULL
GROUP BY pdksshift.sicil
ORDER BY pdkspersonel.sirano
aldığım hata
Column 'pdkspersonel.sirano' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Bu işlemi nasıl gerçekleştirebilirim acaba ? Şimdidien teşekkür eder iyi çalışmalar dilerim
SELECT pdkspersonel.sirano,pdkspersonel.sicil,pdkspersonel.adsoyad,
MAX(case when pdksshift.islemtarihi = '''+ tarihler[0]+''' then pdksshift.shift end) AS '''+tarihler[0]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[1]+''' then pdksshift.shift end) AS '''+tarihler[1]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[2]+''' then pdksshift.shift end) AS '''+tarihler[2]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[3]+''' then pdksshift.shift end) AS '''+tarihler[3]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[4]+''' then pdksshift.shift end) AS '''+tarihler[4]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[5]+''' then pdksshift.shift end) AS '''+tarihler[5]+''',
MAX(case when pdksshift.islemtarihi = '''+ tarihler[6]+''' then pdksshift.shift end) AS '''+tarihler[6]+'''
FROM pdkspersonel inner join pdksshift on pdkspersonel.sicil=pdksshift.sicil
WHERE pdkspersonel.departman = '''+departmanCB.text+''' and pdkspersonel.isciktar IS NULL
GROUP BY pdksshift.sicil
ORDER BY pdkspersonel.sirano
denediğim kod
SELECT pdkspersonel.sirano,pdkspersonel.sicil,pdkspersonel.adsoyad,
MAX(case when pdksshift.islemtarihi = @tarihler1 then pdksshift.shift end) AS @tarihler1,
MAX(case when pdksshift.islemtarihi = @tarihler2 then pdksshift.shift end) AS @tarihler2,
MAX(case when pdksshift.islemtarihi = @tarihler3 then pdksshift.shift end) AS @tarihler3,
MAX(case when pdksshift.islemtarihi = @tarihler4 then pdksshift.shift end) AS @tarihler4,
MAX(case when pdksshift.islemtarihi = @tarihler5 then pdksshift.shift end) AS @tarihler5,
MAX(case when pdksshift.islemtarihi = @tarihler6 then pdksshift.shift end) AS @tarihler6,
MAX(case when pdksshift.islemtarihi = @tarihler7 then pdksshift.shift end) AS @tarihler7
FROM pdkspersonel inner join pdksshift on pdkspersonel.sicil=pdksshift.sicil
WHERE pdkspersonel.departman = @departman and pdkspersonel.isciktar IS NULL
GROUP BY pdksshift.sicil
ORDER BY pdkspersonel.sirano
aldığım hata
Column 'pdkspersonel.sirano' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
Bu işlemi nasıl gerçekleştirebilirim acaba ? Şimdidien teşekkür eder iyi çalışmalar dilerim