简体   繁体   English

多列和表SQL选择

[英]Multi column and table sql select

Hi guys i wonder why this query won't work. 大家好,我想知道为什么这个查询不起作用。 I'm pretty unskilled with sql :) 我对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 我需要获取另一个表上的用户ID并将其加入其他结果

EDIT: the problem is that it doesn't return user_id ( no errors given ) 编辑:问题是它不返回user_id(没有给出错误)

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
                  )";
$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'";

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM