Ceviz Forum

Geri Dön   Ceviz Forum > Programlama > Veritabanları & SQL

Cevapla
 
LinkBack Seçenekler
Eski 02/03/2006, 11:27   #1 (permalink)
...
 
Üyelik Tarihi: 10/2004
Yer: İstanbul
Mesaj: 752
Varsayılan Tarihi günlük gruplama ve sıralama

Arkadaşlar merhaba

Tabloda tarih isminde bir alanımız var ( mssql veritabanı ) içeriği 12.02.2006 21:10:22 gibi değerlerde
ben bu tarih alanını günlük gruplamak istiyorum.

Sql kodu aşağıdakı şekilde olduğunda ekrana aşağıdaki gibi çıktı veriyor
SQL="SELECT COUNT(*) AS toplam,left(tarih,11) as tarih FROM sayac GROUP by left(tarih,11) order by left(tarih,11) "

Şub 28 2006 - Salı
Şub 27 2006 - Pazartesi
Şub 26 2006 - Pazar
Şub 25 2006 - Cumartesi
Şub 24 2006 - Cuma
Şub 23 2006 - Perşembe
Şub 22 2006 - Çarşamba
Şub 21 2006 - Salı
Şub 20 2006 - Pazartesi
Şub 19 2006 - Pazar
Şub 18 2006 - Cumartesi
Şub 17 2006 - Cuma
Şub 16 2006 - Perşembe
Şub 15 2006 - Çarşamba
Şub 14 2006 - Salı
Şub 13 2006 - Pazartesi
Şub 12 2006 - Pazar
Mar 2 2006 - Perşembe
Mar 1 2006 - Çarşamba

benim sormak istediğim öncelikde neden MAR 2 2006 diye grupluyor. ayrıca gördüğünüz gibi sıralamayı düzgün olarak yapmıyor.

burada tarihin yanında yazan gün ismi ayrı bi kod ile yazılıyor sorunumla bir ilgisi yoktur.

şimdiden teşekürler.
__________________
<%if instr(1,","&replace(Eid," ",",")&",",","&rs("id")&",")<>"0" then%>selected<%end if%>
selected hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 12:02   #2 (permalink)
Cevizci
 
Üyelik Tarihi: 02/2003
Mesaj: 165
Varsayılan

http://forum.ceviz.net/archive/t-11450.html

de işine yarayacak bilgiler var
bahtiyarsenoglu hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 12:56   #3 (permalink)
...
 
Üyelik Tarihi: 10/2004
Yer: İstanbul
Mesaj: 752
Varsayılan

arkadaşım teşekkürler verdiğin link için. inceledim, güzel fakat benim sıkıntım olan sıralamaya çözüm olmuyorki. Sıralamalarda sanırım benim kod alfabetik olarak algılıyor ve ona göre diziyor. verdiğin linkteki örnepe göre düzenledim aynı?
selected hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 15:35   #4 (permalink)
Cevizci
 
Üyelik Tarihi: 02/2003
Mesaj: 165
Varsayılan

SELECT CONVERT(char, Tarihi, 104), COUNT(*)
FROM tablo
GROUP BY CONVERT(char, GirisTarihi, 104)

bi dene bakalım...
bahtiyarsenoglu hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 15:37   #5 (permalink)
Cevizci
 
Üyelik Tarihi: 02/2003
Mesaj: 165
Varsayılan

Tarihi ve Giristarihi alanlari ayni ve senin tablondaki alan olacak.
ben aceleyle yanlışlık yapmışım.
bahtiyarsenoglu hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 17:50   #6 (permalink)
...
 
Üyelik Tarihi: 10/2004
Yer: İstanbul
Mesaj: 752
Varsayılan

arkadaşım çok teşekkürler fatak SQL kodunu aşağıdaki gibi yaptım senin verdiğin koduda order by ile ekledim çıkan sonucuda yazıyorum.

SQL="Select count(*) as toplam,CONVERT(char,tarih,104) AS tarih from sayac group by CONVERT(char,tarih,104) order by CONVERT(char,tarih,104) desc"

bu sql kodu ile ekrana verilen çıktı

28.02.2006 - Salı
27.02.2006 - Pazartesi
26.02.2006 - Pazar
25.02.2006 - Cumartesi
24.02.2006 - Cuma
23.02.2006 - Perşembe
22.02.2006 - Çarşamba
21.02.2006 - Salı
20.02.2006 - Pazartesi
19.02.2006 - Pazar
18.02.2006 - Cumartesi
17.02.2006 - Cuma
16.02.2006 - Perşembe
15.02.2006 - Çarşamba
14.02.2006 - Salı
13.02.2006 - Pazartesi
12.02.2006 - Pazar
02.03.2006 - Perşembe
01.03.2006 - Çarşamba

ekrana dizmek istediğim sıralama ise aşağıdaki gibi.

02.03.2006 - Perşembe
01.03.2006 - Çarşamba
28.02.2006 - Salı
27.02.2006 - Pazartesi
26.02.2006 - Pazar
25.02.2006 - Cumartesi
24.02.2006 - Cuma
23.02.2006 - Perşembe
22.02.2006 - Çarşamba
21.02.2006 - Salı
20.02.2006 - Pazartesi
19.02.2006 - Pazar
18.02.2006 - Cumartesi
17.02.2006 - Cuma
16.02.2006 - Perşembe
15.02.2006 - Çarşamba
14.02.2006 - Salı
13.02.2006 - Pazartesi
12.02.2006 - Pazar

sayende convert fonksiyonunuda öğrenmiş olduk teşekkürler fakat sorun hala orada değil sorun order by da
selected hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 18:11   #7 (permalink)
...
 
Üyelik Tarihi: 10/2004
Yer: İstanbul
Mesaj: 752
Varsayılan

arkadaşım verdiğin örnekteki 104leri 101 yaptım ( converti internetten araştırdımda ordan buldum ) yani tarihi ay.gun.yil şekline getirdim. sıralama alfabetik yapıldığından dolayı mart ayı şubat ayından üstte gözükdü. yani istediğim oldu. alfabetik olduğundan dolayı 10 aydan sonra sorun çıkarabilir diye düşündüm fakat denedim ondada sorun çıkarmadı. 10>02 olduğundan. neyse convert ve senin sayesinde oldu. çok teşekkürler.
selected hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 18:44   #8 (permalink)
Cevizci
 
Üyelik Tarihi: 02/2003
Mesaj: 165
Varsayılan

char yerine int li halini de kullan
her iki alan da select te olsun
order by kısmında int li halini kullan.

istediğini sağlıyor ama daha efektif bir çözümü olmalı diye düşünüyorum.

bulursam yazarım.
bahtiyarsenoglu hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 18:49   #9 (permalink)
Cevizci
 
Üyelik Tarihi: 02/2003
Mesaj: 165
Varsayılan

son mesajı yazarken senin mesajını farketmemiştim.

ama senin çözümünde yıl değişminde yanlış sıralama yapar.

10.02.2005 ve 01.12.2006 tarihlerini ay.gun.yil a göre sortlarsan sonuç ne olur?
bahtiyarsenoglu hatta değil   Alıntı Yaparak Yanıtla
Eski 02/03/2006, 19:59   #10 (permalink)
...
 
Üyelik Tarihi: 10/2004
Yer: İstanbul
Mesaj: 752
Varsayılan

biliyorum ama 2005 yılı zaten yok. ayrıca 2007 ye geçtiğimizde de 101 i bu seferde 102 yaparım yy.mm.dd formatında yazar bu sefer yine sıralama benim istediğim gibi olur. Seninde yazdığın gibi çok daha sağlıklı bir çözüm olabilir belki ama buda fazlasıyla işim görür.

bahtiyarselcukoglu tekrar teşekkür ederek birde yaklaşık 3 ay önce sorduğum ve ne yazıkki hala çözemediğim bir sorunumu daha sana link versem aynı şekilde convert ile ilgili bir önceki mesajında da belirtmişsin convert ile int e de çevirebiliyorsak bu sorunumda da bana çözüm olabilir.

http://forum.ceviz.net/showthread.ph...ghlight=INSERT (INSER INTO da para birimi sorunu)
selected hatta değil   Alıntı Yaparak Yanıtla
Cevapla

Bookmarks

Seçenekler

Mesaj Yazma Hakları
Yeni mesajgöndermezsiniz
Cevap yazamazsınız
Dosya ekleyemezsiniz
Mesajınızı düzenleyemezsiniz

BB code is Açık
[IMG] kodu Açık
HTML kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Benzer Konular
Konu Konuyu açana göre Forum Cevap En Son Mesaj
sql sonuclarını gruplama rox PHP 16 29/05/2008 18:37
Haftalık Gruplama selected Veritabanları & SQL 8 10/02/2006 13:11
son 20 dakikadaki kayıtları gruplama selected Veritabanları & SQL 18 21/10/2005 12:15
Verileri gruplama zeusmaster PHP 2 21/04/2005 13:51
db verilerini gruplama ve iç içe döngüler.. Grafik PHP 11 01/12/2004 10:52


Forum saati Türkiye saatine göredir. GMT +3. Şu anda saat 21:01.

Reklamlar & Desteklenenler
Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv |


Forum Yazılımı: vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright ©2001 - 2008, Ceviz.net