Avatar billede tzag_dk Nybegynder
27. maj 2004 - 12:39 Der er 15 kommentarer og
1 løsning

Order By (MySQL)

Hej.

Jeg har et problem med at få soteret mit sql udtræk.
Jeg har denne sql:

"select favoritter.* from favoritter LEFT JOIN profilbilleder ON favoritter.favoritID = profilbilleder.profilerID LEFT JOIN profiler ON favoritter.favoritID = profiler.id where favoritter.profilerID=" & session("id") & " ORDER BY '"& dateadd("n", -1, now()) &"' <= profiler.onlinetime,profilbilleder.billede IS NOT NULL,profilbilleder.godkendt = '1' DESC"

1. Først skal jeg sotere efter om de er online, det gør jeg med:
'"& dateadd("n", -1, now()) &"' <= profiler.onlinetime

2. Der efter skal jeg sotere efter hvem der har et godkendt profil billede, det gør jeg med:
profilbilleder.billede IS NOT NULL,profilbilleder.godkendt = '1'


Problemet er at den ikke vil sotere rigtig.
Hvis jeg fjerner '"& dateadd("n", -1, now()) &"' <= profiler.onlinetime, så viser den fint hvem er har profil billede på, og der næst dem som der ikke har.
Men hvis jeg så gerne vil liste dem som der er online, laver den helt kuk i det :-(

Kan I følge mig?
På forhånd tak :-)
// Rene
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:43 #1
"select favoritter.* from favoritter LEFT JOIN profilbilleder ON favoritter.favoritID = profilbilleder.profilerID LEFT JOIN profiler ON favoritter.favoritID = profiler.id where favoritter.profilerID=" & session("id") & " ORDER BY "& dateadd("n", -1, now()) &" <= profiler.onlinetime,profilbilleder.billede IS NOT NULL,profilbilleder.godkendt = '1' DESC"

prøv at fjerne '' omkring dateadd..
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 12:52 #2
Det syntes ikke at virke. Jeg får denne fejl:
Microsoft OLE DB Provider for ODBC Drivers error '80040e09'

[TCX][MyODBC]Der er en fejl i SQL syntaksen nær '12:53:41 <= profiler.onlinetime,profilbilleder.billede IS NOT NU' på linje 1

Men hvis jeg så sætter ' omkring "& dateadd("n", -1, now()) &", så kommer der noget frem. Og så lister den først hvem der har billede på, og der efter hvem der ikke har billede på. Men til sidst lister den så hvem der er online, og de skulle gerne listes først :-)
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 12:54 #3
mener du order by, eller select? Udvælger du eller sorterer du??
Avatar billede ellebaek Nybegynder
27. maj 2004 - 12:56 #4
"select favoritter.* from favoritter LEFT JOIN profilbilleder ON favoritter.favoritID = profilbilleder.profilerID LEFT JOIN profiler ON favoritter.favoritID = profiler.id where favoritter.profilerID=" & session("id") & " ORDER BY '"& dateadd("n", -1, now()) &"' <= profiler.onlinetime ASC,profilbilleder.billede IS NOT NULL,profilbilleder.godkendt = '1' DESC"

sådan her måske ?
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 13:00 #5
Jeg mener selvfølgelig
  mener du order by, eller where? Udvælger du eller sorterer du??
Du skriver ikke <= og = i en order by.
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 13:02 #6
ellebaek >> Det virker jo :-)
Dog rettede jeg lige ASC DESC.

Mange tak! Vidste ikke at man kunne have 2 DESC i en ORDER BY :-)
Ligger du et svar?
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 13:03 #7
*ASC til DESC
Avatar billede ellebaek Nybegynder
27. maj 2004 - 13:05 #8
;-)

Jeg ligger et svar
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 13:07 #9
Må jeg tillade mig at fortsætte med et spørgsmål:
Hvad mener du der skal ske med

  ... order by  ... profilbilleder.billede IS NOT NULL,profilbilleder.godkendt = '1' DESC

?
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 13:10 #10
At der findes et billede i tabellen profilbilleder, og at det er godkendt.

Er der da en anden måde at gøre det på?
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 13:13 #11
Skal de to betingelser, samt den med dato, så ikke stå under WHERE i din sql-sætning?
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 13:16 #12
nej, for det er en favritliste. Dvs at profilen behøves ikke at have et billede, der skal bare soteres efter hvem der har billede på.
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 13:18 #13
Og så efter om billedet er blevet godkendt :-)
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 13:35 #14
erikjacobsen >>

Er du med, eller?
Avatar billede erikjacobsen Ekspert
27. maj 2004 - 13:42 #15
Det giver måske mening i dit tilfælde.... men datoen?
Skidt med det, du er tilfreds, og jeg er ligeglad ;))
Avatar billede tzag_dk Nybegynder
27. maj 2004 - 13:43 #16
hehe...Fjong :-)
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
Kurser inden for grundlæggende programmering

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