praegune kellaaeg 20.06.2025 23:08:35
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
poroloon
HV kasutaja

liitunud: 25.07.2010
|
08.09.2013 13:21:51
Vaja abi mysql-päringuga |
|
|
Soovin teha lihtsa edetabeli, aga ei suuda päringut õigeks saada.
Hetkel on mul nii:
SELECT * FROM (SELECT * FROM table ORDER BY id DESC) AS table1 GROUP BY user_id ORDER BY id DESC |
ja soovin tulemuseks saada nimekirja, kus kõige üleval on sissekanded, mida on enim lisanud mingi kasutaja (user_id) ja kahanevas järjestuses.
Näiteks user_id 1234 on lisanud 5 sissekannet ja 2345 on lisanud 3 sissekannet, siis soovin, et kuvataks 1234 lisatud viimane sissekanne kohe ülal, selle järel siis 2345 oma. Kui 2345 lisab veel 3 sissekannet, siis tema viimane sissekanne jõuaks 1234 sissekandest ettepoole -- antud juhul siis esimeseks.
Selgituseks veel, et kuigi mitu kasutajat võivad lisada mitu sissekannet, siis edetabelis peaks näha olema vaid üks viimane sissekanne vastava user_id kohta, aga järjestus peaks toimuma vastava user_id loodud sissekannete arvu järgi.
Sissekannete hulk | sisu | autor
(6) Porgandid - lisas 2345
(5) Kaalikad - lisas 1234
(2) Kartulid - lisas 6543
(1) Peet - lisas 8765
(1) Kurk - lisas 9876
(1) Tomat - lisas 7788
jne.
Või kui sellest ülal tolku ei saa, siis teine võimalus, mida on noobi jaoks arusaadavam teha, et sissekannete tabelisse luua lisaväli, mida iga kord lihtsalt uuendatakse, kui sama ID lisab uue sissekande. (ja vähendatakse, kui ta kustutab sissekandeid).
|
|
tagasi üles |
|
 |
Renka
HV Guru

liitunud: 01.04.2002
|
08.09.2013 14:29:04
|
|
|
sql:
|
SELECT user_id, count(*) AS count FROM TABLE GROUP BY user_id ORDER BY count DESC
|
või kui aliasega ei tööta siis
sql:
|
SELECT user_id, count(*) AS count FROM TABLE GROUP BY user_id ORDER BY count(*) DESC
|
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
 |
poroloon
HV kasutaja

liitunud: 25.07.2010
|
09.09.2013 10:49:44
|
|
|
See päring tundub töötavat ("AS count" asemele pidin panema näiteks "AS counts"), aga kuidagi väga aeglaselt laeb tulemused ette. Alguses 2 esimest, siis on 1-2 sek vahet, kuni tuleb 3. ja siis 1 sek hiljem tulevad ülejäänud (kuni 10 ühel lehel). Index oli juba user_id peal olemas.
|
|
tagasi üles |
|
 |
Renka
HV Guru

liitunud: 01.04.2002
|
09.09.2013 11:02:33
|
|
|
See tundub juba seotud olema HTTP ühendusega mis ei ole päringuga nüüd küll kuidagi seotud. Päringule tuleb serveri poolelt vastus ikka ühe korraga mitte jupi kaupa. Vaata mis datat sa brauserisse saadad j amida muu kood seal teeb.
_________________ There is no place like 127.0.0.1 |
|
Kommentaarid: 71 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
1 :: |
61 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|