Jump to content
php.lv forumi

Recommended Posts

Posted

SELECT ch_stats.today_posts, lietotaji.n FROM ch_stats, lietotaji ORDER BY ch_stats.today_posts DESC LIMIT 0, 15;

rekur ir pieprasijums DB.

 

Bet atgrieztajos rezultātos visur today_posts = maximālais (pagaidam 69).

 

Taču pieprasijums ir pareizs? Varbūt MySQL bugs ? versija = 4.0.24

Posted

Nu pag ORDER BY jau ir kārtošana un tam itkā nav nekāda sakara ar '69' jebšu today_posts lauka vērtību..

 

Tikpat labi tu tajā ch_stats.today_posts varētu ielikt 1000 un teikt ka ORDER/MySQL vainīgs?

 

Manuprāt tu kaut ko jauc vai nu ar GROUP BY vai vispār pieprasījuma loģiku..

Posted

hmm.. bet nu izvadītie rezultāti arī pēc katra refresha ir savādāki, tad cik saprotu, tad viņš "domā" ka visiem lietotājiem today_posts=69

 

lietotaji:

id | niks

---------

1 | piu

2 | paf

3 | dooh

 

ch_stats:

id(lietotaja id) | today_posts

-------------

1 | 2

2 | 69

3 | 54

 

 

kads izskatīsies pieprasījums? Datiem taču ir jābūt statiskiem (nemainīgiem) nevis pēc katra refresha japarāda savādāki niki. Vai ne ?

Posted

Nu pirmais kverijs īsti neatbilst tabulas struktūrai / vēlamajam rezultātam (ja es pareizi saprotu)..

 

Ja tev vajag atselectēt lietotājus un viņu šodienas postus nesanāk kaut kā šādi?:

 

SELECT lietotaji.*,ch_stats. today_posts FROM lietotaji, ch_stats WHERE lietotaji.id = ch_stats.id

 

 

šādi gan atselectēt tikai tos userus kam būs posti.. ja vajag visus tad left joins

 

SELECT lietotaji.*,ch_stats. today_posts FROM lietotaji LEFT JOIN ch_stats ON (lietotaji.id = ch_stats.id)

Posted

Tad parādīs lietotājus un katra lietotāja šodienas postus, bet man vajag attēlot TOP 15 kārtojot pēc šodienas postiem, lai izskatās apmēram tā:

 

1. paf - 69

2. dooh - 54

3. piu - 2

  • 1 month later...
×
×
  • Create New...