2015-10-07 90 views
-1

我想从表2中获取c.cf_conditionc.cf_condition_valuec.cf_warranty的值。这些属性不在表1中。我使用了每个连接条件,但没有发生任何事情。这些值可以在内部连接时显示,但没有WHERE p.cf_IsDailyDeal=1条件。如果我不是这个where子句,那么我所需的行不显示。我想获取三个属性,但用这个where子句:如何从另一个表中获取不在第一个表中的值

SELECT p.im_folder, 
p.im_name, 
p.cf_price_check, 
p.category_id, 
p.classifieds_id, 
p.cf_price_check, 
p.classifieds_id, 
p.cf_title, 
p.cf_addeddate, 
p.cf_price, 
(SELECT c.cf_condition FROM as_classifieds as c WHERE c.classifieds_id = p.classifieds_id), 
(SELECT c.cf_condition_value FROM as_classifieds as c WHERE c.classifieds_id = p.classifieds_id), 
(SELECT c.cf_warranty FROM as_classifieds as c WHERE c.classifieds_id = p.classifieds_id) 
FROM as_index_classifieds as p 
WHERE p.cf_IsDailyDeal=1; 
+0

你可以看看 [这里](http://stackoverflow.com/questions/12364602/mysql-inner-join-where-clause)或[这里](http://stackoverflow.com/questions/18153665/inner-join-where-clause)的答案 – SirHenry

+0

我不明白你的问题。试图澄清可能是有用的,也许有一些样本数据。 – Anders

+0

我想从表'as_classifieds'中获取列c.cf_condition,c.cf_condition_value和c.cf_warranty的值。这些列不在表'as_index_classifieds',我使用第二张桌上的选择查询,我想这些3值显示当我回显这些 –

回答

0

我不知道你在找什么,¿这不适合你?

SELECT 
p.im_folder, 
p.im_name, 
p.cf_price_check, 
p.category_id, 
p.classifieds_id, 
p.cf_price_check, 
p.classifieds_id, 
p.cf_title, 
p.cf_addeddate, 
p.cf_price, 
c.cf_condition, 
c.cf_condition_value, 
c.cf_warranty 
FROM as_index_classifieds as p 
LEFT JOIN as_classifieds as c 
ON p.classifieds_id = c.classifieds_id 
WHERE p.cf_IsDailyDeal=1; 

这应该给你的那些行3个属性从表1与相同id作为表2,其中dailyDeal为1

+0

不,我已经尝试过,但c.cf_condition, c.cf_condition_value, c.cf_warranty不显示他们的价值,,,我希望这些列值.. –

+0

你可以给你的表格内容,你想混合2行的一些例子。正如Anders所说,一些示例数据可能会有所帮助 –

相关问题