Table: Person
+-------------+---------+ | Column Name | Type | +-------------+---------+ | PersonId | int | | FirstName | varchar | | LastName | varchar | +-------------+---------+
PersonId
is the primary key column for this table.
Table: Address
+-------------+---------+ | Column Name | Type | +-------------+---------+ | AddressId | int | | PersonId | int | | City | varchar | | State | varchar | +-------------+---------+
AddressId
is the primary key column for this table.
Write a SQL query for a report that provides the following information for each person in the Person
table, regardless if there is an address for each of those people:
FirstName, LastName, City, State
So this is a pretty straight forward question and my answer is
select p.FirstName,p.LastName, a.City, a.State from Person p , Address a where p.PersonId = a.PersonId
And I’m not getting anything in the output and yes I filled up the tables with some simple lines of data.
Advertisement
Answer
Sample data would help, but – the way you described it, it looks as if you need outer join. Something like this:
select p.FirstName, p.LastName, a.City, a.State from Person p left join Address a on a.personid = p.personid