2 mysql选择查询不起作用

时间:2014-02-26 10:45:04

标签: mysql

以下是一个mysql查询,它从 user_property offer 表中获取具有特定条件的数据。因此,在此查询中,我需要来自用户表的 id 用户(我可以从用户表中识别用户 id 谁有他们的公司名称)。这就是为什么我使用第二个选择查询,但我无法得到结果。

$sql = "SELECT * FROM user_property upr, offers ofr,
        WHERE ofr.property_id = upr.property_id
        AND ofr.agent_id = (
             SELECT id FROM users
             WHERE company_name !=''
       ) ORDER BY accept_ind asc";

2 个答案:

答案 0 :(得分:1)

您的子查询可能正在返回多行

您需要在子查询中添加limit语句

(select id from users where company_name !='' LIMIT 1)

或使用in而不是=

ofr.agent_id IN (select id from users where company_name !='') 

答案 1 :(得分:0)

您需要在,之后删除offers ofr并使用IN条款

select 
    *
from
    user_property upr,
    offers ofr
where
    ofr.property_id = upr.property_id
        and ofr.agent_id IN (select 
            id
        from
            users
        where
            company_name != '')
order by accept_ind asc
相关问题