ghetal
ghetal

Reputation: 403

issue in sql join query formation

I have two tables Say A and B. A is master table and B is child table, from which I need values as below.

select A.Id, A.Name, B.Path from A,B where A.Id=B.Id 

Now, I want to add column of 3rd table which is child of table 'B', say C i.e. C.File.

The value of C.File will be null if C.SubId=B.SubId is false else will return value when condition becomes true.

Upvotes: 1

Views: 51

Answers (3)

gunjan maheshwari
gunjan maheshwari

Reputation: 306

Simply Join all the three tables using INNER JOIN

select A.Id, A.Name, B.Path ,C.File
FROM A
INNER JOIN B
ON A.Id=B.Id 
INNER JOIN C
ON C.SubId=B.SubId

Upvotes: 0

Matt
Matt

Reputation: 15061

You need to LEFT JOIN your third table from what I can gather.

SELECT A.Id, A.Name, B.Path, C.file
FROM tableA a
INNER JOIN tableB b ON a.id = b.id
LEFT JOIN tableC c ON b.subid = c.subid

Upvotes: 1

Mureinik
Mureinik

Reputation: 311563

This is the exact definition of a left join:

SELECT    a.id, b.name, b.path, c.file
FROM      a
JOIN      b ON a.id = b.id 
LEFT JOIN c ON b.subid = c.subid

Upvotes: 3

Related Questions