Reputation: 15
Hi guys i wonder why this query won't work. I'm pretty unskilled with sql :)
$sql = "select o.item_id, o.order_id, o.qty, o.price
from " . mainframe()->table('order_items') . " o
left join " . $wpdb->posts . " p
on o.item_id = p.id
where o.item_type = 'product'
and (select j.user_id from ". mainframe()->table('orders') ." j where j.id = o.order_id)";
i need to get user id that is on an other table and join it other results
EDIT: the problem is that it doesn't return user_id ( no errors given )
Upvotes: 0
Views: 40
Reputation: 6477
$sql = "select o.item_id, o.order_id, o.qty, o.price, j.user_id
from " . mainframe()->table('order_items') . " o
left join " . $wpdb->posts . " p
on o.item_id = p.id
left join ". mainframe()->table('orders') ." j onj.id = o.order_id
where o.item_type = 'product'";
Upvotes: 0
Reputation: 101
Try this:
$sql = "select
j.user_id as user_id,
o.item_id as item_id,
o.order_id as order_id,
o.qty as qty,
o.price as price
from " . mainframe()->table('order_items') . " o
left join " . $wpdb->posts . " p
on o.item_id = p.id
where
o.item_type = 'product'
and (
select j.user_id
from ". mainframe()->table('orders') ." j
where j.id = o.order_id
)";
Upvotes: 1