mysql - SQL 在一行中获取今天和昨天的记录

标签 mysql

我们有一个日志表,其中包含以下列:作业名称、开始时间、结束时间、状态、源计数、目标计数、拒绝计数、错误计数等等

每条记录将包含有关每项工作的信息。 我的结果应该像作业名称、开始 dt、结束 dt、状态、源计数、目标计数、拒绝计数、错误计数(今天条目)、源计数、目标计数、拒绝计数、错误计数(昨天计数)

我们需要将今天和今天的记录计数放在一行中。 我们当前正在使用以下查询获取记录。

select * from logtable where start dt=current_date

任何人都可以帮助我使用 SQL 来获得上述结果。

最佳答案

好的,基于您的更新的新答案:

select  logToday.`job name`,
        logToday.`start time`,
        logToday.`end time`, 
        logToday.status,
        logToday.`source count`,
        logToday.`target count`,
        logToday.`reject count`,
        logToday.`error count`,
        logYesterday.`source count`, 
        logYesterday.`target count`,
        logYesterday.`reject count`,
        logYesterday.`error count`
from logtable logToday
join logtable logYesterday on logYesterday.`start time` = subdate(current_date, 1)
where logToday.`start time` = current_date;

以上内容应该适合您。 您说这些列被命名为“开始时间”,但在选择中您使用“开始 dt”?

旧答案:

如果您只想将今天和昨天的两行放在同一行上,您可以这样做:

select logToday.*, logYesterday.*
from logtable logToday
join logtable logYesterday on logYesterday.startdt = subdate(current_date, 1)
where logToday.startdt = current_date;

如果我错过了什么,请提供更多信息,我会修改答案。

关于mysql - SQL 在一行中获取今天和昨天的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44044996/

相关文章:

sql - mysql扩展输出

c# - MySQL 中带有波兰语字符的 AES_DECRYPT() 和 AES_ENCRYPT()

mysql - MySQL 中 UNION 附近的语法错误?

PHP 分页删除搜索词并恢复显示所有结果,修复了吗?

jquery - Ajax jquery 实时验证条目的唯一性

mysql - 为什么我的查询无法从一个表中选择然后插入到另一个表中?

php - yii 中的子查询

mysql - 比较 2 个相同的 MySQL 表

php - XAMPP 不会启动 Apache 和 MySql 服务器

mysql - SQL 中的互斥值