从mysql中的多个表中选择多个列

时间:2012-07-09 06:19:52

标签: mysql stored-procedures

下面是我的查询

select p.problem_id,
       p.problem_title,
       p.description,
       paps.problem_external_source_id, 
       paps.problem_and_problem_source_id 
  from problem_backup p,
       problem_and_problem_source paps 
 where p.problem_id=paps.problem_id and paps.free_user_id!='null';

我的问题是如何根据检索到的列选择另一个表列(即在我的查询中我想从另一个表中选择基于problem_and_problem_source_id的更多列),我希望在同一个查询中执行此操作,我们可以在程序中完成整个工作吗。

1 个答案:

答案 0 :(得分:1)

您可以以相同的方式加入另一个表。注意paps.free_user_id!='null'应该是paps.free_user_id is not null,除非您的意思是user_id确实是字符串'null'

select p.problem_id,
       p.problem_title,
       p.description,
       paps.problem_external_source_id, 
       paps.problem_and_problem_source_id,
       yat.*
from problem_backup p
inner join problem_and_problem_source paps
  on  p.problem_id = paps.problem_id
inner join your_another_table yat
  on paps.problem_and_problem_source_id = yat.join_column_name
where  paps.free_user_id is not null