Avatar billede tblaster Nybegynder
27. august 2007 - 10:09 Der er 7 kommentarer og
1 løsning

Update med 2 tabeller der joines

Jeg har følgende select som kan hente en række poster ud:
SELECT *, D.id FROM Data D, dataXkategori DXK where D.ID = DXK.DID and DXK.KID in (" & rs("ParentIDer") & ") and Temp = 1 order by rand() limit " & DB_Antal & "")

Jeg vil gerne have kædet ovenstående select sammen med en update alla følgende, således at jeg kan vælge poster udfra DXK.KID:
UPDATE Data set Dato = '" & Dato_NU() & "', Temp = 0 where Temp = 1 order by rand()

På forhånd tak.
Avatar billede kjulius Novice
29. august 2007 - 20:32 #1
En mulighed burde være noget á la:

UPDATE Data D SET ...
WHERE EXISTS (SELECT * FROM dataXkategori WHERE = DID = D.id AND ...)
Avatar billede tblaster Nybegynder
31. august 2007 - 10:34 #2
Det giver:

UPDATE Data set Dato = '20070831013412', Temp = 0 WHERE EXISTS (SELECT *, D.id FROM Data D, dataXkategori DXK where D.ID = DXK.DID and DXK.KID in (1) and Temp = 1) order by rand() limit 3

Microsoft OLE DB Provider for ODBC Drivers error '80040e09'

[MySQL][ODBC 3.51 Driver][mysqld-4.0.26]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'EXISTS (SELECT *, D.id F(
Avatar billede michael_stim Ekspert
31. august 2007 - 10:38 #3
Kan vist ikke have subselects i MySQL < version 5. Desuden skal du fortälle hvilken tabel du tager * fra. SELECT DXK.*, D.id FROM Data D, dataXkategori DXK
Avatar billede kjulius Novice
31. august 2007 - 11:21 #4
Iflg. MySQLs online manual for din version af MySQL (som vurderet ud fra din fejlmelding  er version 4.0.26), så har du ikke mulighed for at bruge LIMIT funktionen når du skal opdatere flere tabeller/bruge flere tabeller i din update:

http://dev.mysql.com/doc/refman/4.1/en/update.html
Avatar billede tblaster Nybegynder
31. august 2007 - 12:22 #5
Ok, smid et svar og i får lov at dele point.
Avatar billede michael_stim Ekspert
31. august 2007 - 12:29 #6
1. Har ikke svaret på dit spörgsmål
2. Samler ikke på point, så nej tak ;o)
Avatar billede kjulius Novice
31. august 2007 - 14:14 #7
Normalt modtager jeg gerne point hvis jeg har bidraget med noget til løsningen af et spørgsmål, men i dette tilfælde synes jeg heller ikke, at jeg fortjener dem. Så hvad om du selv lægger et svar, og accepterer det?
Avatar billede tblaster Nybegynder
31. august 2007 - 15:47 #8
Lukker.
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