webForumDet fria alternativet

Plocka ut post där 1 anv finns men inte annan

Databaser & SQL

4 svar · 294 visningar · startad av ironhead

Medlem sedan mars 20011 346 inlägg
Frågan#1

Hoy!

Jag har tabeller med följande relationer:

admin
-----
userid
username

adminmovie
----------
userid
movieid

movies
------
movieid
title

mao kan en användare ha flera filmer

jag skulle vilja ha hjälp med att:
ponera att jag loggar in på min sida och har userid=11 och vill lista filmer från userid=2 men jag vill inte lista de filmer som både han och jag har utan bara de filmer jag inte har.

Kan man göra det direkt i SQL-satsen?

En början :l

SELECT * FROM admin INNER JOIN adminmovie ON admin.userid = adminmovie.userid INNER JOIN movies ON adminmovie.movieid = movies.movieid
Medlem sedan dec. 19995 874 inlägg
#2
select 
  title 
from 
  movies t1 
  inner join adminmovie t2 on 
    t1.movieid = t2.movieid 
    and t2.userid=2 
    and t2.movieid not in (
      select movieid from adminmovie where userid=11
    )
Medlem sedan mars 20011 346 inlägg
#3

Glömde skriva att jag kör mySQL 3.23.56
Får följande fel:
You have an error in your SQL syntax near 'SELECT movieid
FROM adminmovie
WHERE userid = 11

Medlem sedan dec. 200012 464 inlägg
#4
select 
  title 
from 
  movies t1 
  inner join adminmovie t2 on 
    t1.movieid = t2.movieid 
    and t2.userid=2 
   left join adminmovie t3
on t2.movieid = t3.movieid 
    and t3.userid = 11
where t3.movieid is null
Medlem sedan mars 20011 346 inlägg
#5

Klockren...tackar LarsG :D

265 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
135 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
135 ms — ändringar (db)