I'm using MySQL and I have a query. There is also a subquery.
SELECT * FROM rg, list, status
WHERE (
(rg.required_status_id IS NULL AND rg.incorrect_status_id IS NULL) ||
(status.season_id = rg.required_status_id AND status.user_id = list.user_id) ||
(rg.incorrect_status_id IS NOT NULL AND
list.user_id NOT IN (SELECT user_id FROM status WHERE user_id = list.user_id AND season_id = rg.incorrect_status_id)
)
)
The problem is the following part of the code:
(rg.incorrect_status_id IS NOT NULL AND
list.user_id NOT IN (SELECT user_id FROM status WHERE user_id = list.user_id AND season_id = rg.incorrect_status_id)
)
How could I check if the table "status" has a row where user_id
is same as list.user_id
and season_id
is same as rg.incorrect_status_id
?
Update
Here is my current code, but it does not work at all. I do not know what to do.
SELECT * FROM rg, list, status
LEFT JOIN status AS stat
INNER JOIN rg AS rglist
ON rglist.incorrect_status_id = stat.season_id
ON stat.season_id = rglist.incorrect_status_id
WHERE (
(rg.required_status_id IS NULL AND rg.incorrect_status_id IS NULL) ||
(status.season_id = rg.required_status_id AND status.user_id = list.user_id) ||
(rg.incorrect_status_id IS NOT NULL AND stat.user_id IS NULL)
)
)
Update 2
I modified the names, but the basic idea is same.
FROM sarjojen_rglistat, sarjojen_rglistojen_osakilpailut, kilpailukausien_kilpailut, sarjojen_osakilpailuiden_rgpisteet
, sarjojen_kilpailukaudet, sarjojen_kilpailukausien_kilpailusysteemit
/* , kayttajien_ilmoittautumiset */
/* , sarjojen_kilpailukausien_pelaajastatukset */
LEFT OUTER JOIN sarjojen_kilpailukausien_pelaajastatukset
ON sarjojen_kilpailukausien_pelaajastatukset.sarjan_kilpailukausi_id = sarjojen_rglistat.vaadittu_pelaajastatus_id
LEFT OUTER JOIN kayttajien_ilmoittautumiset
ON kayttajien_ilmoittautumiset.kayttaja_id = sarjojen_kilpailukausien_pelaajastatukset.kayttaja_id
Now this says:
Column not found: 1054 Unknown column 'sarjojen_rglistat.vaadittu_pelaajastatus_id' in 'on clause'
Why is that so?
I have a table called "sarjojen_rglistat" and there is a column "vaadittu_pelaajastatus_id".