Skip to main content

AccessTr.neT


Sorguda Sıra numarası oluşturmak

Sorguda Sıra numarası oluşturmak

Çözüldü #1
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
Çözüldü #2
Örnek ekleyip,daha açık sorunuzu sorunuz.
"Her tercih, bir vazgeçiştir"

Cevapla
Çözüldü #3
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, kimse yeterince düşünmüyor demektir
Cevapla
Çözüldü #4
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
.rar Ornek.rar (Dosya Boyutu: 12,39 KB | İndirme Sayısı: 49)
Son Düzenleme: 25/11/2013, 02:01, Düzenleyen: fulem.
Cevapla
Çözüldü #5

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

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

Visual Basic Code
 select * from tablo1 order by İŞİ

Bu işine göre sıralar.

Visual Basic 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
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
Çözüldü #6
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, kimse yeterince düşünmüyor demektir
Son Düzenleme: 25/11/2013, 02:38, Düzenleyen: KJS.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da