Sorguda Sıra numarası oluşturmak
Tarih
23/11/2013 01:12
Konu Sahibi
fulem
Yorumlar
8
Okunma
2581
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



fulem
Üye
Kullanici Avatari
Üye
3
1
10/12/2010
0
Belirtilmemiş
Ofis 2003
16/11/2016,00:30
Çözüldü 
Sorguda sıra numarası oluşturma ile bir çok örnek var lakin sıralamada veri aynı olunca sıralamada tekrar eden sıra numarası oluşuyor bunu nasıl engelleriz
Örnek olarak

yaş İsim
3 xxxxx
5 yyyy
3 zzzzz
3 mmmm
Sorgu çıktısı
Sıra No isim Aslında Olması Gereken sıra No
3 xxxxxx 1
3 zzzzzz 2
3 mmmm 3
4 yyyyy 4
Cevapla


yorum70

Kullanici Avatari
Özel Üye
A.... Ş....
1.187
08/10/2010
71
Ankara
Ofis 2013 64 Bit
22/10/2016,21:00
Çözüldü 
Örnek ekleyip,daha açık sorunuzu sorunuz.
"Her tercih, bir vazgeçiştir"

Cevapla


cttm98
Aktif Üye
Kullanici Avatari
Aktif Üye
K.... J....
212
2
24/04/2012
155
İstanbul
Ofis 2007
18/05/2016,18:49
Çözüldü 
sn yorum70,
demek istediği: diyelim bir tablomuz var ve içinde 1 alan ve iki tane (A ve B) veri var.
Sorgu oluşturduğun zaman - Arkadaşın istediği
A - 1 A
B - 2 B
Hiç olmayan bir yerden sıra numarası koymak.
Ben baya bir uğraştım; raporda oluyor da sorguda bir türlü yapamadım.
Değerli hocalarımız bu konuda bizi aydınlatırsa sevinirim. Çünkü bu konuyu ben de merak ediyorum. Büyük ihtimal yapılamıyor, ama bakalım hocalrımız ne diyecek
Herkes aynı şeyi düşünüyorsa, hiç kimse yeterince düşünmüyor demektir
Cevapla


fulem
Üye
Kullanici Avatari
Üye
3
1
10/12/2010
0
Belirtilmemiş
Ofis 2003
16/11/2016,00:30
Çözüldü 
Ek Ornek olarak koyuldu. Tablo1 master tablodur diger tablolar sorguda nasıl bir SIRA numarası üretmek istediğimi anlatmak için koyulmuştur örnekten anlaşılacağı gibi aynı değere sahip veriler sıralanırken bile sıra numarası ardışık olacak ve proje Access 2003 altında çalışacak ve kod ile değil Sql sorgu ile yapılması sağlanacak. yani VB Kodu ile dosyası açın verileri çekin for next döngüsü ile istediğiniz gibi sıralayın demenizi beklemiyorum. İlgilenenlere duyurulur.

Bir şey daha var onu yazmayı unutmuşum Sıralama sorgusu Başka bir sorgudan çekilen veriler üzerine uygulanacak


Ek Dosyalar
.rar   Ornek.rar (Dosya Boyutu: 12,39 KB / İndirme Sayısı: 27)
Cevapla


Kur@l
AccessTR.Net
Kullanici Avatari
Uzman
2.029
05/11/2008
KONYA
Ofis 2010
15/11/2016,02:32
Çözüldü 

SQL Code
 select * from tablo1 order by İŞİ,YAŞI 

Bu önce işi sonra yaşına göre sıralar.

SQL Code
 select * from tablo1 order by İŞİ

Bu işine göre sıralar.

SQL Code
 select * from tablo1 order by YAŞI 

Bu yaşına göre sıralar.

Aşağıda da Sql ile sıralama yapmak ile ilgili bir anlatım vardır.

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
Sıralama Yapmak


SELECT sütunlar FROM tablo_adı ve varsa koşulları WHERE koşul şeklinde yazdıktan sonra ORDER sütun_adı ile listenin neye göre sıralanacağını belirtiriz.

Aşağıdaki verilere sahip bir "uyeler" tablomuz olduğunu düşünürsek:

SELECT * FROM uyeler;

+----+-------+-----+
| id | isim  | yas |
+----+-------+-----+
| 1  | Ali   | 39  |
| 2  | Gözde | 28  |
| 3  | Sevim | 24  |
| 4  | Ayşe  | 32  |
| 5  | Halil | 48  |
| 6  | Ece   | 24  |
+----+-------+-----+
   


Sıralamanın -farklı bir kural belirtilmemişse- kayıt sırasına göre yapıldığını görebiliriz. Bu listeyi yaşa göre sıralamak istersek sorgunun sonuna ORDER BY yas ekleriz:

SELECT * FROM uyeler ORDER BY yas;

+----+-------+-----+
| id | isim  | yas |
+----+-------+-----+
| 3  | Sevim | 24  |
| 6  | Ece   | 24  |
| 2  | Gözde | 28  |
| 4  | Ayşe  | 32  |
| 1  | Ali   | 39  |
| 5  | Halil | 48  |
+----+-------+-----+
   


Dikkat edilirse 24 yaşında iki üye var. Fakat Sevim'in kayıt numarası daha küçük olduğundan yukarıda görünüyor. Bu durumda ikinci bir sıralamada dikkat edilecek husus belirtmek istersek virgül koyarak diğer geçerli sütun adını yazarız:

SELECT * FROM uyeler ORDER BY yas, isim;

+----+-------+-----+
| id | isim  | yas |
+----+-------+-----+
| 6  | Ece   | 24  |
| 3  | Sevim | 24  |
| 2  | Gözde | 28  |
| 4  | Ayşe  | 32  |
| 1  | Ali   | 39  |
| 5  | Halil | 48  |
+----+-------+-----+
   


Nitekim bu örnekte eğer "yas" sütunundaki veriler eşitse dikkat edilecek ikinci sütunun "isim" sütunu olacağını bildirdik. Yaptığımız 3 örnekte de sıralamanın sayılarda küçükten büyüğe, harflerde alfabetik olarak listelendiğini gördük. Eğer bu durumun tersini yapmak istiyorsak sütun adından sonra DESC eki getirmemiz yeterlidir. Örneğin yaşı büyükten küçüğe sıralayacak olursak:

SELECT * FROM uyeler ORDER BY yas DESC, isim;

+----+-------+-----+
| id | isim  | yas |
+----+-------+-----+
| 5  | Halil | 48  |
| 1  | Ali   | 39  |
| 4  | Ayşe  | 32  |
| 2  | Gözde | 28  |
| 6  | Ece   | 24  |
| 3  | Sevim | 24  |
+----+-------+-----+
   

komşuda dülger mi var geliyor keser sesi,
ustalar konuşunca çıraklar keser sesi.
Cevapla


cttm98
Aktif Üye
Kullanici Avatari
Aktif Üye
K.... J....
212
2
24/04/2012
155
İstanbul
Ofis 2007
18/05/2016,18:49
Çözüldü 
sn,Kur@l
Deylim sadece Uyeler tablo ve isim alanı var. (Tek tablo tek alan)
Sevim
Aylin
iki tane de veri var.
ada göre sıralatalım ve başına sıra numarası koydralım.
yani
1 Aylin
2 Sevim
bunu sorguda yapabilmek mümkün mü?
Herkes aynı şeyi düşünüyorsa, hiç kimse yeterince düşünmüyor demektir
Cevapla







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  sorguda sadece bilgi girilen alanları göstersin ahmet114 5 84 Dün, 09:04 ahmet114
  Sorguda aynı kaydın birden çok listelenmesi atyaty 6 137 01/12/2016, 11:17 atoz112
  Tabloda Telefon numarası yoksa eklesin. 53rize 4 84 29/11/2016, 11:30 53rize
  Sorguda yürüyen bakiye sorunu. Mecnun24 21 433 14/11/2016, 08:48 ates2014
  Sorguda Kullanıcı Adını alma tufanbal 4 126 08/11/2016, 08:10 tufanbal


Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2016 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya