SchweppesAle Posted October 8, 2009 Share Posted October 8, 2009 Can't seem to get the following query to return true $query1 = "SELECT jos_users.email , jos_users.id , jos_users.usertype , jos_users.block , jos_comprofiler.firstname , jos_comprofiler.lastname , jos_comprofiler.user_id , jos_comprofiler.approved , jos_comprofiler.confirmed , jos_comprofiler.banned , jos_comprofiler.cb_address1 , jos_comprofiler.cb_city , jos_comprofiler.cb_state , jos_comprofiler.cb_zip , jos_comprofiler.phone , jos_comprofiler.fax , jos_comprofiler.cb_country , jos_comprofiler.cb_primaryresponsibility , jos_cbsubs_subscriptions.user_id AS sub_ID , jos_cbsubs_subscriptions.plan_id , jos_cbsubs_subscriptions.status , jos_cbsubs_subscriptions.expiry_date , jos_cbsubs_subscriptions.subscription_date , jos_cbsubs_subscriptions.last_renewed_date , jos_cbsubs_payment_baskets.payment_status , jos_cbsubs_payment_baskets.user_id FROM jos_users, jos_cbsubs_payment_baskets INNER JOIN jos_comprofiler ON jos_comprofiler.user_id = jos_users.id INNER JOIN jos_cbsubs_subscriptions ON jos_cbsubs_subscriptions.user_id = jos_users.id WHERE jos_cbsubs_subscriptions.plan_id = 4 AND (jos_cbsubs_subscriptions.status = 'A' OR jos_cbsubs_subscriptions.status = 'C') INNER JOIN jos_cbsubs_payment_baskets ON jos_cbsubs_payment_baskets.user_id = jos_users.id WHERE jos_cbsubs_payment_baskets.payment_status != 'Completed'"; Was also hoping someone could clarify the difference between an OUTER and INNER join. Thanks Link to comment https://forums.phpfreaks.com/topic/176983-joining-multiple-tables/ Share on other sites More sharing options...
SchweppesAle Posted October 8, 2009 Author Share Posted October 8, 2009 Trying to return a list of users who haven't made a payment yet and as a result won't appear within the payment_basket. That's why I figured an outer join may/may not be required. Not really sure though. Link to comment https://forums.phpfreaks.com/topic/176983-joining-multiple-tables/#findComment-933133 Share on other sites More sharing options...
SchweppesAle Posted October 8, 2009 Author Share Posted October 8, 2009 changed the query. still no luck $query1 = "SELECT jos_users.email , jos_users.id , jos_users.usertype , jos_users.block , jos_comprofiler.firstname , jos_comprofiler.lastname , jos_comprofiler.user_id , jos_comprofiler.approved , jos_comprofiler.confirmed , jos_comprofiler.banned , jos_comprofiler.cb_address1 , jos_comprofiler.cb_city , jos_comprofiler.cb_state , jos_comprofiler.cb_zip , jos_comprofiler.phone , jos_comprofiler.fax , jos_comprofiler.cb_country , jos_comprofiler.cb_primaryresponsibility , jos_cbsubs_subscriptions.user_id AS sub_ID , jos_cbsubs_subscriptions.plan_id , jos_cbsubs_subscriptions.status , jos_cbsubs_subscriptions.expiry_date , jos_cbsubs_subscriptions.subscription_date , jos_cbsubs_subscriptions.last_renewed_date , jos_cbsubs_payment_baskets.payment_status , jos_cbsubs_payment_baskets.user_id FROM jos_users INNER JOIN jos_comprofiler ON jos_comprofiler.user_id = jos_users.id INNER JOIN jos_cbsubs_subscriptions ON jos_cbsubs_subscriptions.user_id = jos_users.id WHERE jos_cbsubs_subscriptions.plan_id = 4 AND (jos_cbsubs_subscriptions.status = 'A' OR jos_cbsubs_subscriptions.status = 'C') LEFT JOIN jos_cbsubs_payment_baskets ON jos_cbsubs_payment_baskets.user_id = jos_users.id WHERE jos_cbsubs_payment_baskets.payment_status != 'Completed' "; It's definitely that last join which is causing the issue. Link to comment https://forums.phpfreaks.com/topic/176983-joining-multiple-tables/#findComment-933228 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.