WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   SQL hjälp tänk (https://www.wn.se/forum/showthread.php?t=1054413)

frecka 2012-08-04 23:39

SQL hjälp tänk
 
tjenare

vill lösa detta i en query och får det inte att funka

jag har en tabell med lag och en med lagets spelare

tabbellen med lag har kolumnerna id och server

tabbellen med spelarna har kollumnerna team_id och user_id

Jag vill nu tömma spelar-tabbelen där server är en specifik server. Men jag vet inte hur man gör det med flera tabbeller i samma query

ungefär såhär: DELETE FROM players WHERE user_id = 'userid' AND IN teams WHERE server = 'specific_server'

yakuzaemme 2012-08-04 23:53

Citat:

Ursprungligen postat av frecka (Inlägg 20446606)
tjenare

vill lösa detta i en query och får det inte att funka

jag har en tabell med lag och en med lagets spelare

tabbellen med lag har kolumnerna id och server

tabbellen med spelarna har kollumnerna team_id och user_id

Jag vill nu tömma spelar-tabbelen där server är en specifik server. Men jag vet inte hur man gör det med flera tabbeller i samma query

ungefär såhär: DELETE FROM players WHERE user_id = 'userid' AND IN teams WHERE server = 'specific_server'

Jag ger dig koden för att hämta i en enskild query, men lite måste du få pilla själv :)

Kod:

"SELECT b.id, b.server, u.team_id FROM teams AS b INNER JOIN players AS u ON b.server = u.team_id where u.team_id = '".$server."'"
Hoppas det hjälper, kan inneha lite småfel men det bjuder jag på.

jonny 2012-08-05 01:14

Något i stil med

DELETE FROM
Player
WHERE
PlayerId IN (
SELECT P.PlayerId
FROM Player P
LEFT JOIN Team T ON P.TeamId = T.TeamId
WHERE T.ServerId=345
)


Alla tider är GMT +2. Klockan är nu 17:41.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson