从没有关系的单独表中选择

时间:2011-12-12 11:31:39

标签: mysql select multi-table

如何在没有关系的表中从一个查询中释放SELECT?

SELECT discount_rate.valueSet, discount_rate.dateSet 
FROM discount_rate 
WHERE discount_rate.dateSet<='2011-12-11' 
ORDER BY discount_rate.dateSet DESC LIMIT 1; 

SELECT min_wage.valueMonth AS min_wage_month, min_wage.valueDay AS min_wage_day 
FROM min_wage 
WHERE min_wage.dateSet<='2011-12-11' 
ORDER BY min_wage.dateSet DESC LIMIT 1;

SELECT max_wage.valueWage 
FROM max_wage 
WHERE max_wage.dateSet<='2011-12-11' 
ORDER BY max_wage.dateSet DESC LIMIT 1;

1 个答案:

答案 0 :(得分:2)

由于3个查询中的每一个都返回一行,您可以将它们包装在CROSS JOIN的查询中:

SELECT valueSet
     , dateSet
     , valueMonth
     , valueWage 
FROM
    ( SELECT ... ) AS q1        --- subquery 1
  CROSS JOIN
    ( SELECT ... ) AS q2        --- subquery 2
  CROSS JOIN
    ( SELECT ... ) AS q3        --- subquery 3