保存SQL语句的结果以便在其他地方使用

时间:2014-08-29 18:10:24

标签: mysql sql database

我试图找出一种方法来编写自2014-07-01以来已发送的文件数量的sql查询(以下示例应导致 4 ) 。我有两个不同的表需要查询,因为日期仅在第一个中可用。它们如下:

消息:

________________________________
messageid | Message | datesent |
1           xxxx      2014-06-30
2           xxxx      2014-07-01
3           xxxx      2014-07-03

文件:

________________________________
filename        |   messageid
red.txt             1
blue.txt            1
green.txt           1
fish.pdf            2
google.doc          3
bing.doc            3
duckduckgo.doc      3

所以我有一对多的关系,因为一条消息可以附加多个文件。

到目前为止,我已使用以下内容获取自2014-07-01以来第一条消息的messageid SELECT (messageid) FROM messages WHERE (datesent) = '2014-07-01' LIMIT 1
我怀疑我需要以此为出发点,但我不知道从哪里开始。任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:2)

这样的东西?

select count(0)
from messages as m
join files as f on f.messageid=m.messageid
where m.datesent>'2014-07-01'

答案 1 :(得分:1)

使用此:

SELECT COUNT(*)
FROM messages INNER JOIN files ON messages.messageid = files.messageid
WHERE datesent >= '2014-07-01';