同时查询特定日期范围的多个表

时间:2016-03-07 22:45:29

标签: mysql union

我有三张相同的表格:

  • gradbusdb.user
  • gradedudb.user
  • gradtheologydb.user

在每个表格中,我都有YYYY-MM-DD格式的emailsubmited_date。我的最终目标是同时查询所有三个表,但当我在UNIONemail列的3个表之间执行submited_date时,它会忽略我的WHERE条件并显示所有结果。

我目前的查询如下:

SELECT email, submited_date FROM gradbusdb.user 
UNION
SELECT email, submited_date FROM gradedudb.user
UNION
SELECT email, submited_date FROM gradtheologydb.user
WHERE submited_date BETWEEN '2016-02-01' AND '2016-02-29'
ORDER BY submited_date ASC

我不确定我在这里做错了什么,但我需要查询才能显示日期范围内的结果。

1 个答案:

答案 0 :(得分:1)

您应该将每个查询的WHERE用于union

        if (it == end) // they're all digits
        {
            std::cout << std::string(beg, end) << std::endl;
        }
        beg = end;
    } // end while loop (word separation)
} // end while loop (reading lines)