SQLTeam.com | Weblogs | Forums

Mysql Query - does not return all results


I have problems fixing this query:

All the films in Italian.

I did it this way:

select language.name, film.title
from language
inner join film on film.film_id = language.language_id
where language.name = 'Italian';

it works but only returns one id, but not all records. Why?

name || title
italian cicco & franco
... ....
... ....

Why do not other records come out, as the two tables are full?

This is a Microsoft SQL Server forum, so you might not find anyone here that knows the answer to a MySQL question.

EDIT: Sorry, saw "language" and thought that would be a database system setting ...

Looking at your SQL code this seems improbable:

inner join film on film.film_id = language.language_id

It seems unlikely that the film_id is the correct column for joining to the language_id column in the language table

Naturally change the table owner/schema if it's not "dbo":

select l.name, f.title
from dbo.language l
inner join dbo.film on f.language_id = l.language_id
where l.name = 'Italian';

Small correction: this needs an alias (for the rest of the code to work, and just in case the O/P is a novice and doesn't realise that)

inner join dbo.film f on

I can;t remember, but I'm not sure that s "thing" in MySQL. I think it goes straight from Database to Table, but my MySQL knowledge is extremely limited.