- Home
- Categorie
- Coding e Sistemistica
- PHP
- Select tra due tabelle come si fa?
-
Select tra due tabelle come si fa?
Non sono molto pratico, questa è la mia query che funziona:
[PHP]$result = mysql_query("SELECT
link_content
,link_id
,link_url
FROMnews_links
LIMIT 1, 100")
or die(mysql_error());[/PHP]ora devo estrarre i video da un'altra tabella: **news_video
** che all'interno contiene i campi link_id e code dove chiaramente code è il codice di youtube per il video e link_id è il riferimento all'id dell'articolo associato al video contenuto anche nell'altra tabella news_links
-
SELECT * FROM prima_tab JOIN seconda_tab ON campo=campo1
-
@linoma said:
SELECT * FROM prima_tab JOIN seconda_tab ON campo=campo1
non mi è molto chiaro:
$result = mysql_query("SELECT
link_content
,link_id
,link_title
,link_url
FROMnews_links
JOINnews_video
ON link_id=link_id1 ")io devo estrarre il campo code per ogni link id
-
Cerco di sintetizzare un po cs fa MYSQL, lega le 2 tabelle creando una corrispondenza biunivoca utilizzando cm riferimento il campo che indichi dopo ON. Il nome del campo nn il contenuto.
Esempio molto comune e quello di creare una tabella prodotti e la rispettiva tabella di vendita, ecco la tabella vendita è legata alla tabella prodotto tramite id_prodotto.
Quindi avrai una SELECT molto simile SELECT * FROM prodotti JOIN vendita ON vendita.id_prodotto = prodotti.id.
-
il concetto l'ho capito, ma non riesco a metterlo in pratica:
$result = mysql_query("SELECT
link_content
,link_id
,link_title
,link_url
FROMnews_links
JOINnews_video
ON news_video.link_id = news_links.link_id ")e code dove lo metto? in pratica faccio la select dalla prima tabella, poi unisco la seconda e associo gli id e fin qua mi pare che ci sono.. ma come estraggo il campo code associato al link_id
-
La via + semplice è usare SELECT *. Altrimenti specifichi nome_tabella.campo
-
ok penso di esserci riuscito con questa query:
$result = mysql_query("SELECT * FROM news_links JOIN news_video ON news_video.link_id = news_links.link_id LIMIT 1, 100")
ora però il problema è che ho come risultati soli i casi in cui i contenuti hanno un video, invece io voglio tutti i contenuti e quelli che hanno il video con il video..
leggendo la documentazione del JOIN mi pare di capire che c'entri il discorso OUTER INNER FULL E CROSS e quello che fa al caso mio è FULL solo che se scrivo nella query di sopra FULL JOIN mi dice che ho un errore in sql sintax
-
Magari può aiutarti: vado.li/mysql-Join
-
Hai provato con LEFT JOIN?