15-05-2015, 11:46 (En son düzenleme: 15-05-2015, 11:48 HAKKI34.)
// Fiş numaraları aynı olanların fiş sira nosu en küçük olanları sıralamak
SELECT calismano as fisno, kumas, kullmiktari, kumaseni,sirano
FROM TES.dbo.maliyetkumas
where sirano in (select min(sirano) from TES.dbo.maliyetkumas group by sirano)
GROUP BY calismano, kumas, kullmiktari, kumaseni, sirano
ORDER BY calismano
(15-05-2015, 11:46)HAKKI34 demiş ki: // Fiş numaraları aynı olanların fiş sira nosu en küçük olanları sıralamak
SELECT calismano as fisno, kumas, kullmiktari, kumaseni,sirano
FROM TES.dbo.maliyetkumas
where sirano in (select min(sirano) from TES.dbo.maliyetkumas group by sirano)
GROUP BY calismano, kumas, kullmiktari, kumaseni, sirano
ORDER BY calismano
Fis calisanno ayni olan kayitlara ait em kucuk sira numaralarinin siralamasi
SELECT calismano, Min(sirano) AS KucukSira FROM TES.dbo.maliyetkumas GROUP BY TES.dbo.maliyetkumas.calismano HAVING (((TES.dbo.maliyetkumas.calismano) In (SELECT [calismano] FROM [TES.dbo.maliyetkumas] As Tmp GROUP BY [calismano] HAVING Count(*)>1 ))) ORDER BY TES.dbo.maliyetkumas.calismano, Min(TES.dbo.maliyetkumas.sirano)
[le olabilir.
Hocam bu haliyle doğru sonuç getiriyor.
calismano as fisno, kumas, kullmiktari, kumaseni,sirano
Bu alanları eklediğimde eskisi gibi oluyor. Benim bu alanları göremeye de ihtiyacım var.
Group by da bu alanarı ekliyorum. Maalesef sonuç eskisi gibi..
Amacım fişde ki ilk girilen veriyi göstermek.. Aynı fişde ki diğer satırları görmemek.
15-05-2015, 16:21 (En son düzenleme: 15-05-2015, 16:46 HAKKI34.)
SELECT calismano,kumas,kullmiktari,kumaseni, Min(sirano) AS KucukSira FROM TES.dbo.maliyetkumas
GROUP BY TES.dbo.maliyetkumas.calismano , TES.dbo.maliyetkumas.kumas,TES.dbo.maliyetkumas.kullmiktari,TES.dbo.maliyetkumas.kumaseni,TES.dbo.maliyetkumas.sirano
HAVING (((TES.dbo.maliyetkumas.calismano) In
(SELECT [calismano]
FROM TES.dbo.maliyetkumas As Tmp
GROUP BY [calismano]
HAVING Count(*)>1 )))
ORDER BY TES.dbo.maliyetkumas.calismano, Min(TES.dbo.maliyetkumas.sirano)
Bu şekilde olmalı ama aynı fiş de çoklu gösteriyor.. Ayrıca fiş de her zaman birden fazla satır olmayabilir. Tek satırda da geçebilir. Bu durumda o fişi hiç göstermeyecek. Göstermesi gerekiyor
15-05-2015, 18:11 (En son düzenleme: 15-05-2015, 18:12 HAKKI34.)
Önce bir view oluşturdum..
SELECT calismano, MIN(sirano) AS KucukSira
FROM dbo.maliyetkumas
GROUP BY calismano
ORDER BY calismano, KucukSira
Daha sonra bu view aşağıdaki seleği yazdım.. Oldu.. Bunu tek view de nasıl yaparız
SELECT dbo.TrmaliyetKumas1.calismano, dbo.maliyetkumas.kumas, dbo.maliyetkumas.kullmiktari
FROM dbo.TrmaliyetKumas1 LEFT OUTER JOIN
dbo.maliyetkumas ON dbo.TrmaliyetKumas1.KucukSira = dbo.maliyetkumas.sirano AND dbo.TrmaliyetKumas1.calismano = dbo.maliyetkumas.calismano
ORDER BY dbo.TrmaliyetKumas1.calismano
Sn HAKKI34;
SELECT TESdbomaliyetkumas.calismano, TESdbomaliyetkumas.sira, TESdbomaliyetkumas.kullmiktari, TESdbomaliyetkumas.kumas FROM TESdbomaliyetkumas WHERE (((TESdbomaliyetkumas.sira)=(Select min(b.sira) from TESdbomaliyetkumas As b where ((b.calismano)=TESdbomaliyetkumas.calismano))))
ORDER BY TESdbomaliyetkumas.calismano
olarak dneyin.