folder Tahribat.com Forumları
linefolder Database - Veritabanı
linefolder Mysql Aralıklı Veri Nasıl Çekerbilirim



Mysql Aralıklı Veri Nasıl Çekerbilirim

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Bektas
    x-files
    x-files's avatar
    Kayıt Tarihi: 06/Eylül/2005
    Erkek

    Merhaba şimi ahmet diye bir tablom var. Ben bu tabloya günlük 10 adet kayıt giriyorum tarih-saat ile bilikte kayıt giriliyor. 

    Ben bu verileri çekmek istiyorum fakat şöyle bir sorunum var:

    Son 101 kaydı çekmek istiyorum. ama bu 101 kayıttan 10 tanesini çekmek isyiroum. Sıralama yaparsak

    1-11-21-32-41-51-61-71-81-91-101

    Sıralama olarak yukardaki gibi çekmek istiyorum. Ama id gidemem çünkü id ler sürekli değişiyor.

    Şu an şöyle yaparak 100 veriyi çekiyorum.

    SELECT * FROM ahmet WHERE kategori = 1  DESC LIMIT 100

    Ama en son kaydedilen 100 veriyi veriyor. Order By ile random yapsam bu sefer rastgele veriyor. Radom yerine ne yazabilirim.

    (32 neden seriyi bozdun diye sormayın bugün kandil)


    //Hayat Bazen Tatlıdır//--//Aşıksan vur saza şoförsen bas gaza// https://zulfumehmet.com/ Kişisel bir olay
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    wert
    wert's avatar
    Kayıt Tarihi: 19/Eylül/2005
    Erkek

    id sıralaması doğrumu peki?


    |sadece aptalların başarısı ders notu ile ölçülür|
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Bektas
    x-files
    x-files's avatar
    Kayıt Tarihi: 06/Eylül/2005
    Erkek
    wert bunu yazdı

    id sıralaması doğrumu peki?

    sıralı gidiyor kategori numarası sabit.


    //Hayat Bazen Tatlıdır//--//Aşıksan vur saza şoförsen bas gaza// https://zulfumehmet.com/ Kişisel bir olay
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    wert
    wert's avatar
    Kayıt Tarihi: 19/Eylül/2005
    Erkek
    SET @row_number = 0;
    select * FROM
    (
    	SELECT *,(@row_number:=@row_number + 1) AS num from ahmet where kategori = 1 ORDER BY id desc
    ) as a 
    where num%10=1 limit 10;

     

    dene bakayım olacakmı?

     

    wert tarafından 02/Nis/19 16:45 tarihinde düzenlenmiştir

    |sadece aptalların başarısı ders notu ile ölçülür|
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    garga
    garga's avatar
    Kayıt Tarihi: 29/Temmuz/2002
    Erkek

    1-11-21-32-41-51-61-71-81-91-101

    peki benim sormak istedigim soru da, niye 32 de 31 degil ? haksizlik degil mi ? tek derdimiz adelet !

     

    edit:

    hahaha adam cevap vermis ya lan :P pardon kardesim...

    (32 neden seriyi bozdun diye sormayın bugün kandil)

    garga tarafından 02/Nis/19 17:56 tarihinde düzenlenmiştir

    anca gidersin...
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Roark
    Roark's avatar
    Kayıt Tarihi: 12/Ağustos/2011
    Erkek

    bir değişken oluşturulup yapılabilir aslında. 

  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Bektas
    x-files
    x-files's avatar
    Kayıt Tarihi: 06/Eylül/2005
    Erkek
    wert bunu yazdı
    SET @row_number = 0;
    select * FROM
    (
    	SELECT *,(@row_number:=@row_number + 1) AS num from ahmet where kategori = 1 ORDER BY id desc
    ) as a 
    where num%10=1 limit 10;

     

    dene bakayım olacakmı?

     

    Yemedi Reis hata:

    Hata
    Sabit çözümleme:
    
    Çözümleme sırasında 5 hata bulundu.
    
    Beklenmedik belirteç. (near ")" at position 93)
    Tanınmayan anahtar kelime. (near "as" at position 95)
    Beklenmedik belirteç. (near "a" at position 98)
    Bu tür yan tümce daha önce ayrıştırıldı. (near "where" at position 100)
    Tanınmayan ifade türü. (near "where" at position 100)
    SQL sorgusu: Belgeler
    
    SELECT *,(@row_number:=@row_number + 1) AS num from ahmet where kategori = 1 ORDER BY id desc) as a where num%10=1 limit 10
    
    MySQL çıktısı: Belgeler
    
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') as a where num%10=1 limit 10' at line 1

     


    //Hayat Bazen Tatlıdır//--//Aşıksan vur saza şoförsen bas gaza// https://zulfumehmet.com/ Kişisel bir olay
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    wert
    wert's avatar
    Kayıt Tarihi: 19/Eylül/2005
    Erkek

    programlamada ilk önce bu sorguyu gerçekleştir

    SET @row_number = 0;
    

    sonra bu sorguyu gerçekleştrip denermsin (ikisini aynı satırda değil)

    select * FROM
    (
        SELECT *,(@row_number:=@row_number + 1) AS num from ahmet where kategori = 1 ORDER BY id desc
    ) as a
    where num%10=1 limit 10;

     


    |sadece aptalların başarısı ders notu ile ölçülür|
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Roark
    Roark's avatar
    Kayıt Tarihi: 12/Ağustos/2011
    Erkek

    Hocam merhabalar elimde deneme amaçlı bir tablom vardı , daha doğrusu kendim 1m kayıt girmiştim test amaçlı. Şimdi tekrar konuya rast gelince bir bakayım dedim.

     

    DECLARE @sayi int 
    
    select @sayi = COUNT(*) FROM  dbo.Musteriler // toplam satırı alması amaçlı
    
    DECLARE @sayi1 int // adım için 
    
    set @sayi1= 1;
    
    
    
    WHILE @sayi1<@sayi  
    BEGIN
    select MusteriID from Musteriler where MusteriID = @sayi1
    set @sayi1 = @sayi1+10 // 1-11-21-31-41......
    END

     

     

     

     

     

     

    Roark tarafından 02/Nis/19 22:14 tarihinde düzenlenmiştir
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Bektas
    x-files
    x-files's avatar
    Kayıt Tarihi: 06/Eylül/2005
    Erkek
    Roark bunu yazdı

    Hocam merhabalar elimde deneme amaçlı bir tablom vardı , daha doğrusu kendim 1m kayıt girmiştim test amaçlı. Şimdi tekrar konuya rast gelince bir bakayım dedim.

     

    DECLARE @sayi int 
    
    select @sayi = COUNT(*) FROM  dbo.Musteriler // toplam satırı alması amaçlı
    
    DECLARE @sayi1 int // adım için 
    
    set @sayi1= 1;
    
    
    
    WHILE @sayi1<@sayi  
    BEGIN
    select MusteriID from Musteriler where MusteriID = @sayi1
    set @sayi1 = @sayi1+10 // 1-11-21-31-41......
    END

     

     

     

     

     

     

    Reis phpmyadminden denedim olmadı? Team versem yada 

    tablo adı: doviz

    veri yazılacak sütun alis

    kategori=1

    Nasıl kurgulamalıyım.


    //Hayat Bazen Tatlıdır//--//Aşıksan vur saza şoförsen bas gaza// https://zulfumehmet.com/ Kişisel bir olay
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Roark
    Roark's avatar
    Kayıt Tarihi: 12/Ağustos/2011
    Erkek
    x-files bunu yazdı
    Roark bunu yazdı

    Hocam merhabalar elimde deneme amaçlı bir tablom vardı , daha doğrusu kendim 1m kayıt girmiştim test amaçlı. Şimdi tekrar konuya rast gelince bir bakayım dedim.

     

    DECLARE @sayi int 
    
    select @sayi = COUNT(*) FROM  dbo.Musteriler // toplam satırı alması amaçlı
    
    DECLARE @sayi1 int // adım için 
    
    set @sayi1= 1;
    
    
    
    WHILE @sayi1<@sayi  
    BEGIN
    select MusteriID from Musteriler where MusteriID = @sayi1
    set @sayi1 = @sayi1+10 // 1-11-21-31-41......
    END

     

     

     

     

     

     

    Reis phpmyadminden denedim olmadı? Team versem yada 

    tablo adı: doviz

    veri yazılacak sütun alis

    kategori=1

    Nasıl kurgulamalıyım.

    PM'den yaz bakalım hocam böyle yazınca bir şey anlayamadım :) 

     

    Roark tarafından 02/Nis/19 22:18 tarihinde düzenlenmiştir
Toplam Hit: 2286 Toplam Mesaj: 19
sıralı veritabanı veri çekme