2010-04-29 92 views
3

我有兩列作爲公司和產品。如何使用使用子查詢的選定列的條件?

我用下面的查詢來獲取產品匹配特定字符串...

​​

但是,當我需要列出具體公司的產品我該怎麼辦?

我嘗試以下,但靜脈

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

幫助我

+2

希望你$ qry_string正確轉義。另外我希望你會接受一個很好的答案。 – 2010-04-29 06:20:41

回答

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%' 

我覺得跟你查詢試過問題是,你不能where子句中使用是一個子查詢的結果領域(在你的情況,「公司」)。您可以嘗試having

+0

感謝您的快速回復。工作很好 – Vijay 2010-04-29 06:15:38

1

您可以使用

SELECT p.id, c.name AS company, p.name, p.selling_price, p.mrp FROM product p, company c WHERE p.cid=c.id AND c.name LIKE '$qry_string'