lostyazilim
tr.link

sql sorgusu nasıl olmalı?

2 Mesajlar 694 Okunma
acebozum
tr.link

Srn Srn WM Aracı Kullanıcı
  • Üyelik 31.05.2014
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım
  • Konum İstanbul Anadolu
  • Ad Soyad S** K**
  • Mesajlar 89
  • Beğeniler 18 / 17
  • Ticaret 7, (%100)
Merhaba Arkadaşlar

islemler adında bir tablom var

tablo yapısı

tarih................... kod şeklinde
01.01.2017 00:05 .....33
01.01.2017 00:16 .....35
02.01.2017 04:55 ....36

şeklinde devam ediyor. sorgudan almak istediğim sonuç

..................kod33 kod 35 kod36
01.01.2017 3 adet 5 adet 8adet
02.01.2017 1 adet 2 adet 6 adet gibi verilen tarih aralığında rapor almak.

bu şekilde tek satırda bu sonuca nasıl varabilirim?
 

 

wmaraci
webimgo

Altunay Altunay WM Aracı Kullanıcı
  • Üyelik 13.11.2017
  • Yaş/Cinsiyet 51 / E
  • Meslek Veritabanı Uzmanı
  • Konum Karabük
  • Ad Soyad Ş** A**
  • Mesajlar 4
  • Beğeniler 2 / 2
  • Ticaret 0, (%0)
Alt sorgu ile aynı günde satılan aynı ürünlerin adetlerini sayarsın,
üst sorgu ile de tarih ve urun_id bazında ayırırsınız.
Kod, (bana göre urun_id) ne kadar çoksa ona göre ilave edersiniz
ve otomatik olarak türetebilirsiniz veya urun_id sayısını siz belirlersiniz.

SELECT
tarih,
SUM(IF(urun_id=1 , adet, 0)) bir,
SUM(IF(urun_id=2 , adet, 0)) iki,
SUM(IF(urun_id=3 , adet, 0)) uc,
SUM(IF(urun_id=4 , adet, 0)) dort,
SUM(IF(urun_id=5 , adet, 0)) bes,
SUM(IF(urun_id=6 , adet, 0)) alti,
SUM(IF(urun_id=7 , adet, 0)) yedi,
SUM(IF(urun_id=8 , adet, 0)) sekiz
FROM
(SELECT tarih, urun_id, COUNT(urun_id) adet
FROM ozet
GROUP BY tarih, urun_id
) AS P
GROUP BY tarih

Srn

kişi bu mesajı beğendi.

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al