Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use inner join in select with mysql?

I want to fetch record from mysql database on following condition

I have the following tables:

  • organization_ Table

    organizationId | organizationname
    
  • campaign Table

    camp_id | camp_name | adv_id | organizationId
    
  • advertise Table

    adv_id | adv_name
    
  • ad_display Table

    ad_displayId | adv_id | camp_id |
    

Now from ad_display table I want to fetch record like this:

| adv_name | camp_name | organizationname

With WHERE Condtion as Where organizationId == ?

So basically I want the advertise list of campaign where organization_id=?

Note: there should be multiple entry for same adv_id in camapign table and same camp_id with multiple entry in ad_display

like image 414
User 1531343 Avatar asked Dec 28 '12 09:12

User 1531343


3 Answers

Try this:

SELECT ad.ad_displayId, a.adv_name, c.camp_name, o.organizationname 
FROM ad_display ad 
INNER JOIN advertise a ON ad.adv_id = a.adv_id 
INNER JOIN campaign c ON ad.camp_id = c.camp_id 
INNER JOIN organization o ON c.organizationId = o.organizationId 
WHERE o.organizationId = ?;
like image 143
Saharsh Shah Avatar answered Oct 06 '22 01:10

Saharsh Shah


Maybe something like this?

SELECT Distinct
  advertise.adv_name,
  campaign.camp_name,
  organization_.organizationname
FROM
  advertise inner join campaign
  on advertise.adv_id = campaign.adv_id
  inner join organization_
  on campaign.organizationID = organization_.organizationID
WHERE
  organization_.organizationID = 1
like image 24
fthiella Avatar answered Oct 06 '22 01:10

fthiella


SELECT  advertise.adv_name, 
        campaign.camp_name, 
        organization_Table.organizationname
FROM   ad_display 
    INNER JOIN advertise ON ad_display.adv_id = advertise.adv_id 
    INNER JOIN campaign ON ad_display.camp_id = campaign.camp_id 
    INNER JOIN organization_ Table ON campaign.organizationId = organization_Table.organizationId
    AND organization_Table.organizationId=?
like image 32
Patrick Guimalan Avatar answered Oct 06 '22 01:10

Patrick Guimalan