如何使用子查询使用所选列的where条件?

Vij*_*jay 3 php mysql subquery

我有两个专栏作为公司和产品.

我使用以下查询来获取匹配特定字符串的产品...

select id,(select name from company where product.cid=company.id) as 
company,name,selling_price,mrp from product where name like '$qry_string%'
Run Code Online (Sandbox Code Playgroud)

但是,当我需要列出特定公司的产品时,我该怎么办?

我尝试了以下但是静脉

select id,(select name from company where product.cid=company.id) as
company,name,selling_price,mrp from product where company like '$qry_string%'
Run Code Online (Sandbox Code Playgroud)

帮我

Tom*_*tel 5

你要做的不需要子查询,简单的连接就足够了.试试这个:

select c.name, p.id, p.name, p.selling_price, p.mrp
  from company c
 inner join product p
    on c.id = p.cid
 where c.name like '$qry_string%'
Run Code Online (Sandbox Code Playgroud)

我认为您尝试的查询的问题是您不能在where子句中使用子查询(在您的情况下,"公司")的结果.你可以试试having.