wmaraci reklam
lidertakipci

Bu mantığa nasıl bir sql kodu yazılabilir ?

20 Mesajlar 3.503 Okunma
advertseo
wmaraci reklam

jancooth jancooth Bilgi Paylaşmak İçindir Kullanıcı
  • Üyelik 27.05.2012
  • Yaş/Cinsiyet 39 / E
  • Meslek Öğrenci, yazılım, web tasarım
  • Konum
  • Ad Soyad ** **
  • Mesajlar 97
  • Beğeniler 58 / 14
  • Ticaret 0, (%0)
bu sorgu sana butun degerlerin arasindan en yuksek 100 tanesini secer ve aralarindan 10 tanesini rastgele gösterir.

Cevap:
SELECT TOP 10 Deger from //Önce top 10'u çağırıyoruz
(SELECT TOP 100 Deger FROM Tablo ORDER BY Deger DESC) AS X // Çağırdğımı top 10'u burada ilk 100'ün içinden alıyoruz.
ORDER BY NEWID() // NewID() mssql de random değer gösterir.
Hurkal

kişi bu mesajı beğendi.

www.yasinkilickaya.com
wmaraci
reklam

dtdesign dtdesign vizyondakifilm.org Kullanıcı
  • Üyelik 04.09.2012
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Kırıkkale
  • Ad Soyad ** **
  • Mesajlar 480
  • Beğeniler 47 / 78
  • Ticaret 0, (%0)

jancooth adlı üyeden alıntı

bu sorgu sana butun degerlerin arasindan en yuksek 100 tanesini secer ve aralarindan 10 tanesini rastgele gösterir.

Cevap:
SELECT TOP 10 Deger from //Önce top 10'u çağırıyoruz
(SELECT TOP 100 Deger FROM Tablo ORDER BY Deger DESC) AS X // Çağırdğımı top 10'u burada ilk 100'ün içinden alıyoruz.
ORDER BY NEWID() // NewID() mssql de random değer gösterir.


düzenleyerek aşağıdaki kodu yazdım olmadı hocam


SELECT * from (SELECT * FROM filmler ORDER BY imdbpuani DESC) AS X ORDER BY imdbpuani
 

 

dursuntokgoz.com.tr | dursuntokgoz.net | vizyondakifilm.org

jancooth jancooth Bilgi Paylaşmak İçindir Kullanıcı
  • Üyelik 27.05.2012
  • Yaş/Cinsiyet 39 / E
  • Meslek Öğrenci, yazılım, web tasarım
  • Konum
  • Ad Soyad ** **
  • Mesajlar 97
  • Beğeniler 58 / 14
  • Ticaret 0, (%0)
1 - kardesim sen benim verdigim kod ile alakasız , 2- sordugun soru ile alakasız bir sorgu gonderiyorsun. sordugun sorunun cevabı olan sorguyu yazdim. Hatta bugun kendi veritabanlarımda test ettim.

simdi senin Filmler tablon ve bu tablonun icinde imdbpuani alanın var diye dusunuyorum.

senin yazacağın sorgu aşağıda.

SELECT TOP 10 imdbpuani from (SELECT TOP 100 imdbpuani FROM filmler ORDER BY imdbpuani DESC) AS X
ORDER BY NEWID()
 

 

www.yasinkilickaya.com

dtdesign dtdesign vizyondakifilm.org Kullanıcı
  • Üyelik 04.09.2012
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Kırıkkale
  • Ad Soyad ** **
  • Mesajlar 480
  • Beğeniler 47 / 78
  • Ticaret 0, (%0)

jancooth adlı üyeden alıntı

1 - kardesim sen benim verdigim kod ile alakasız , 2- sordugun soru ile alakasız bir sorgu gonderiyorsun. sordugun sorunun cevabı olan sorguyu yazdim. Hatta bugun kendi veritabanlarımda test ettim.


hocam veritabanında top 10 diye bişi yok şuanda top 10 filmi çekmek istediğimde aşağıdaki gibi bi kod çalıştırarak çekebiliyorum ama sizin yazdığınız kodu pek anlamadım doğrusunu söylemek gerekirse. düzenleyerek denedim olmadı

top 10 çağırma kodum şu şekilde


SELECT *
FROM filmler
ORDER BY filmler.imdbpuani DESC
LIMIT 0 , 10



rastgele 10 adet çekmek isteyince de aşağıdaki kodu kullanıyorum


SELECT *
FROM filmler
ORDER BY rand()
LIMIT 0 , 10


ama bu ikisinin karışımı imdbpuani en yüksek olan 100 film den rastgele 10 tanesini çekemedim
 

 

dursuntokgoz.com.tr | dursuntokgoz.net | vizyondakifilm.org
wmaraci
wmaraci

jancooth jancooth Bilgi Paylaşmak İçindir Kullanıcı
  • Üyelik 27.05.2012
  • Yaş/Cinsiyet 39 / E
  • Meslek Öğrenci, yazılım, web tasarım
  • Konum
  • Ad Soyad ** **
  • Mesajlar 97
  • Beğeniler 58 / 14
  • Ticaret 0, (%0)
Dostum sanırım veritabanı sorgularına tam olarak hakim degilsin. Ve zaten ben cevabı yazarken yanlarına acıklamalarını yaptım. kopyala yapıştır. senin yazacağın sorgu aşağıda.

SELECT TOP 10 imdbpuani from (SELECT TOP 100 imdbpuani FROM filmler ORDER BY imdbpuani DESC) AS X
ORDER BY NEWID()
 

 

www.yasinkilickaya.com

dtdesign dtdesign vizyondakifilm.org Kullanıcı
  • Üyelik 04.09.2012
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Kırıkkale
  • Ad Soyad ** **
  • Mesajlar 480
  • Beğeniler 47 / 78
  • Ticaret 0, (%0)

jancooth adlı üyeden alıntı

Dostum sanırım veritabanı sorgularına tam olarak hakim degilsin. Ve zaten ben cevabı yazarken yanlarına acıklamalarını yaptım. kopyala yapıştır. senin yazacağın sorgu aşağıda.

SELECT TOP 10 imdbpuani from (SELECT TOP 100 imdbpuani FROM filmler ORDER BY imdbpuani DESC) AS X
ORDER BY NEWID()


evet hocam veritabanı sorgularına pek hakim değilim ancak sizin verdiğiniz kodu aynen kopyala yapıştır dedim sorguladım ancak hata verdi hata kodu aşağıda


#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 '10 imdbpuani from (SELECT TOP 100 imdbpuani FROM filmler ORDER BY imdbpuani DESC' at line 1
 

 

dursuntokgoz.com.tr | dursuntokgoz.net | vizyondakifilm.org

jancooth jancooth Bilgi Paylaşmak İçindir Kullanıcı
  • Üyelik 27.05.2012
  • Yaş/Cinsiyet 39 / E
  • Meslek Öğrenci, yazılım, web tasarım
  • Konum
  • Ad Soyad ** **
  • Mesajlar 97
  • Beğeniler 58 / 14
  • Ticaret 0, (%0)
kardesim benim gonderdigim MSSQL , sana mysql kodu lazım... o kısmıda pek bilmiyorm.
 

 

www.yasinkilickaya.com

Hurkal Hurkal Sms Onayı Gerekli Banlı Kullanıcı
  • Üyelik 05.08.2011
  • Yaş/Cinsiyet - / E
  • Meslek Öğretmen
  • Konum İstanbul Avrupa
  • Ad Soyad ** **
  • Mesajlar 382
  • Beğeniler 89 / 114
  • Ticaret 0, (%0)

jancooth adlı üyeden alıntı

bu sorgu sana butun degerlerin arasindan en yuksek 100 tanesini secer ve aralarindan 10 tanesini rastgele gösterir.

Cevap:
SELECT TOP 10 Deger from //Önce top 10'u çağırıyoruz
(SELECT TOP 100 Deger FROM Tablo ORDER BY Deger DESC) AS X // Çağırdğımı top 10'u burada ilk 100'ün içinden alıyoruz.
ORDER BY NEWID() // NewID() mssql de random değer gösterir.


MySQL kodu da benden gelsin o zaman.

SELECT Deger from
(SELECT Deger FROM Tablo ORDER BY Deger DESC LIMIT 0,100) AS X
ORDER BY RAND() LIMIT 0,10
jancooth

kişi bu mesajı beğendi.

dtdesign dtdesign vizyondakifilm.org Kullanıcı
  • Üyelik 04.09.2012
  • Yaş/Cinsiyet 30 / E
  • Meslek Öğrenci
  • Konum Kırıkkale
  • Ad Soyad ** **
  • Mesajlar 480
  • Beğeniler 47 / 78
  • Ticaret 0, (%0)

Hürkal adlı üyeden alıntı

MySQL kodu da benden gelsin o zaman.

SELECT Deger from
(SELECT Deger FROM Tablo ORDER BY Deger DESC LIMIT 0,100) AS X
ORDER BY RAND() LIMIT 0,10


hocam çok teşekkür ederim. tam istediğim gibi oldu valla :)
 

 

dursuntokgoz.com.tr | dursuntokgoz.net | vizyondakifilm.org

marten marten yok Kullanıcı
  • Üyelik 23.07.2012
  • Yaş/Cinsiyet 37 / E
  • Meslek Maden Mühendisi
  • Konum Karabük
  • Ad Soyad E** Y**
  • Mesajlar 126
  • Beğeniler 24 / 24
  • Ticaret 1, (%100)
hocam bi kere veri tutmaniz hatali databaseyi bosuna yormayin 5.8 / 10 degerini databeseye muhtemelen text olarak verdiniz bu gereksiz. bunun yerine databasede integer olarak 5.8 degerini tutun "/ 10" degerini sonradan html ile koyun
 

 

wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al