Avatar billede mule Nybegynder
28. april 2001 - 22:34 Der er 17 kommentarer og
1 løsning

Vælg fra flere tabeller i database???

Jeg skal vælge fra flere tabeller, sorteret efter dato i alle tabeller, hvis i forstår hvad jeg mener, f.eks. sådan her, men jeg kan ikke få det til at virker:
select * from artikler, artikler2 where opslag_slut <> \'y\' order by dato

Jeg benytter en mysql-database...
Avatar billede tofte Juniormester
28. april 2001 - 22:58 #1
Nedenstående SQL burde kunne gøre det

SELECT * FROM artikler WHERE opslag_slut <> \'y\' UNION SELECT * FROM artikler2 WHERE opslag_slut <> \'y\' ORDER by dato
Avatar billede mule Nybegynder
28. april 2001 - 23:04 #2
Microsoft OLE DB Provider for ODBC Drivers fejl \'80040e09\'
[TCX][MyODBC]parse error near \'UNION SELECT * FROM opslag_arter WHERE opslag_slut <> \'y\' ORDER by dato\' at line 1

/akvarieklubben.dk/ver. 2/opslagstavle2.asp, linje 49
Avatar billede mule Nybegynder
28. april 2001 - 23:05 #3
Det var en fejl at jeg accepterede, shit!
Avatar billede tofte Juniormester
28. april 2001 - 23:09 #4
Giv mig lige 5 min til at rette og test en anden sætning. Ellers skal du nok få dine points tilbage.
Avatar billede mule Nybegynder
28. april 2001 - 23:10 #5
ok, godt der stadig er nogle der er ærlige :-)
Avatar billede tofte Juniormester
28. april 2001 - 23:46 #6
Jeg tror lige jeg giver op for en kort stund.

Her er dine points
http://www.eksperten.dk/spm/68563
Avatar billede erikjacobsen Ekspert
28. april 2001 - 23:53 #7
Jeg tror du skal lave to select-er og så lave en fletning. Visse databasesystemer
tillader vel UNION, men ikke alle. Kender du selv flette-algoritmen?
Avatar billede mule Nybegynder
29. april 2001 - 00:00 #8
Nej, det gør jeg ikke :(
Avatar billede erikjacobsen Ekspert
29. april 2001 - 00:06 #9
Ok, lad mig lige se om jeg får tid...
Avatar billede mule Nybegynder
29. april 2001 - 00:22 #10
kommer det i aften, eller en anden dag?
Avatar billede erikjacobsen Ekspert
29. april 2001 - 00:25 #11
Ja, det er det evige dilemma for spørgerne. Jeg har efterhånden lært
så meget, at jeg aldrig lover noget! Men jeg har netop lavet en anden
fletning, end den du har brug for i: http://www.eksperten.dk/spm/68328
godt nok i PHP
Avatar billede mule Nybegynder
29. april 2001 - 00:28 #12
ok, det var vidst en tand for avanceret ;-)
Avatar billede erikjacobsen Ekspert
29. april 2001 - 00:41 #13
Lad mig komme med en skitse til dit. Utestet. Ret selv ASP-syntaks fejl

lav rs1 med \"select * from artikler order by dato\";
lav rs1 med \"select * from artikler order by dato\";

while (not rs1.eof) and (not rs2.eof)
  if rs1(\"dato\")=rs2(\"dato\") then
    response.write rs1(\"dato\") & \": \" & rs1(\"emne\") & \"<br>\"
    rs1.movenext
  else
    if rs1(\"dato\")<rs2(\"dato\") then
      response.write rs1(\"dato\") & \": \" & rs1(\"emne\") & \"<br>\"
      rs1.movenext
    else
      response.write rs1(\"dato\") & \": \" & rs1(\"emne\") & \"<br>\"
      rs1.movenext
    end if
  end if
wend

while not rs1.eof
  response.write rs1(\"dato\") & \": \" & rs1(\"emne\") & \"<br>\"
  rs1.movenext
wend

while not rs2.eof
  response.write rs2(\"dato\") & \": \" & rs2(\"emne\") & \"<br>\"
  rs2.movenext
wend
Avatar billede mule Nybegynder
29. april 2001 - 12:40 #14
PERFEKT! Takker mange gange, jeg har oprettet spm. med point til dig her:
http://www.eksperten.dk/spm/68625
Avatar billede mule Nybegynder
29. april 2001 - 13:44 #15
kan det iøvrigt lade sig gøre at lave en fletning med mere end 2 tabeller????
Avatar billede mule Nybegynder
29. april 2001 - 13:56 #16
F.eks. fire tabeller :(
Avatar billede erikjacobsen Ekspert
29. april 2001 - 19:46 #17
Ja, men så er det også mere kompliceret... hvis du har rs1, rs2, rs3 og rs4 skal
du i hvert gennemløb finde den mindste. Og du kan ikke bare stoppe når én er
tom..... Men, jo, det kan gøres! Hvad med at overveje at lave strukturen om
på dine tabeller i stedet for :=)
Avatar billede mule Nybegynder
04. maj 2001 - 16:30 #18
Jo, det er nok en lidt bedre ide ;-)
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