Avatar billede ml Nybegynder
14. november 2001 - 14:45 Der er 18 kommentarer og
1 løsning

LIMIT problemer

Jeg har problemer med LIMIT funktionen, denne udskriver kun et (1) resultat og ikke \"top 30\" som er meningen. Laver jeg LIMIT 200 i stedet skriver den 36 resultater ud, fjerne jeg LIMIT kommer der massere...

Sql = \"SELECT * FROM dlstat WHERE uge = \'\"& uge &\"\' ORDER BY (dls + (hits/3)) DESC, dls DESC LIMIT 30\"

Hvad er der galdt ?
Avatar billede proaccess Nybegynder
14. november 2001 - 14:47 #1
Jeg mener LIMIT både skal have nedre og øvre grænse med...

LIMIT 1, 30
Avatar billede disky Nybegynder
14. november 2001 - 14:48 #2
ORDER BY (dls + (hits/3))

giver ingen mening
Avatar billede disky Nybegynder
14. november 2001 - 14:51 #3
proaccess virker fint med kun 1 værdi, så er start værdi nemlig 0
Avatar billede proaccess Nybegynder
14. november 2001 - 14:52 #4
Jeg trækker mit svar tilbage...  WAY OFF !!!
Avatar billede proaccess Nybegynder
14. november 2001 - 14:54 #5
>disky: Jeg ved ikke, hvad der lige foregik i mit hoved... Selvfølgelig virker LIMIT med 1 værdi !!!
Avatar billede disky Nybegynder
14. november 2001 - 14:54 #6
det er bare helt okay :)
Avatar billede ml Nybegynder
14. november 2001 - 14:56 #7
proaccess > nej man behøver kun skrive LIMIT 30 det er det samme som LIMIT 0,30

disky > jo det giver jo et eller andet tal som den skal sortere efter.. Men det er ikek der problemet er, det samme er galdt hvis man blot skriver

Sql = \"SELECT * FROM dlstat WHERE uge = \'\"& uge &\"\' ORDER BY dls LIMIT 30\"

Den skriver godt nok 7 ud her, men stadig langt fra 30
Avatar billede martin1000ben Nybegynder
14. november 2001 - 14:57 #8
i mysql hedder limit da 0,1

altså 2 værdier !?!
Avatar billede disky Nybegynder
14. november 2001 - 15:00 #9
martin jeg bruger aldrig mere end 1 værdi og det virker fint.

Men ML prøv det evt, måske er din mysql gammel og kræver 2 værdier
Avatar billede disky Nybegynder
14. november 2001 - 15:01 #10
taget fra mysql.com

\'SELECT [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]
      [HIGH_PRIORITY]
      [DISTINCT | DISTINCTROW | ALL]
    select_expression,...
    [INTO {OUTFILE | DUMPFILE} \'file_name\' export_options]
    [FROM table_references
        [WHERE where_definition]
        [GROUP BY {unsigned_integer | col_name | formula} [ASC | DESC], ...]
        [HAVING where_definition]
        [ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC] ,...]
        [LIMIT [offset,] rows]
        [PROCEDURE procedure_name]
        [FOR UPDATE | LOCK IN SHARE MODE]]



Læg mærke til at offset er inde i [] ud for limit, det betyder at man ikke er tvunget til at angive den
Avatar billede disky Nybegynder
14. november 2001 - 15:02 #11
prøv:
SELECT * FROM dlstat LIMIT 30

bare som test

Avatar billede ml Nybegynder
14. november 2001 - 15:06 #12
disky > Det er den nyest (ikke 4.0) på en sprit ny server...

SELECT * FROM dlstat LIMIT 30 skriver 6 resultater ud :(
Avatar billede disky Nybegynder
14. november 2001 - 15:07 #13
det er godt nok MEGET underligt,

gælder det alle tabeller eller kun denne ?

hvad er resultatet af

select count(*) from dlstat ?
Avatar billede ml Nybegynder
14. november 2001 - 15:09 #14
FU** nu ved jeg hvad det er... Den tabel den realatere til indeholder ikke alle posterne da jeg blot tester. Er ved at konvertere fra MS SQL til MySQL... Så det virker, felterne mangler bare = den kan ikke skrive dem ud...

DOH! - Jeg arbejder sq hvis for meget for tiden ;]

Men ellers tak for hjælpen!
Avatar billede disky Nybegynder
14. november 2001 - 15:10 #15
ja det var mit næste gæt derfor den med count(*)
Avatar billede ml Nybegynder
14. november 2001 - 15:13 #16
ja sorry... Den her er jeg sq ikke for stolt af ;)
Avatar billede disky Nybegynder
14. november 2001 - 15:15 #17
hehe
Avatar billede mortenfn Nybegynder
14. november 2001 - 17:53 #18
er det løst ?
Avatar billede ml Nybegynder
14. november 2001 - 19:17 #19
jaja. Den er i vinkel...
Sorry.. Skal nok lige lukke spørgsmålet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester