Lirdoner
2.03.2011, 17:55:32
Witam, mam dwie tabele
1. users
id | login
1 |Lirdoner
2. news
id | autor_id
1 | 1
I chciałbym pobrać takie rekordy, żeby pobrało * z news ale autor_id zamieniło na login z tabeli users z konkretnym id (ustalonym przez autor_id)
Da się to zrobić w jednym zapytaniu?
Spawnm
2.03.2011, 17:57:21
Użyj join . Ale nie zamieniło tylko dodatkowo pobrało z tabeli users.
Lirdoner
2.03.2011, 18:15:17
Czy to zapytanie jest dobre?
SELECT p . * , q.login, q.id
FROM news p
INNER JOIN users q
WHERE p.autor_id = q.id
Nie jestem pewien czy to właśnie pobiera login usera którego id jest równe autor_id
Spawnm
2.03.2011, 18:18:54
Po co inner? I po co ci q.id skoro pobierasz autor_id ?
Lirdoner
2.03.2011, 18:24:13
A no w sumie tak to q.id nie jest potrzebne potrzebne
Czyli teraz poniższe zapytanie jest dobrze tak?
SELECT p . * , q.login
FROM news p
JOIN users q
WHERE p.autor_id = q.id
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.