sql - 如何有效地计算至少 1 行
问题描述
我有一个非常大的表,将来自许多接口的数据存储到一个设备,如果所有接口都运行良好,1 天内会收到数百万行,该表是一个视图,因此没有索引键。
Interface Equip Readtime
a HA55 01/01/2021 00:02
b HA56 01/01/2021 00:05
c HA55 01/01/2021 00:41
a HA56 01/02/2021 01:23
a HA57 01/02/2021 04:00
b HA54 01/01/2021 05:12
我想每天扫描一次,如果所有设备至少从 1 个接口接收到数据,则从前一天开始扫描,但是表中有很多行,即使是 select * where day=yesterday 也需要很长时间才能执行。
那么有没有一种有效的方法来计算一个设备的一个接口,然后停止并搜索另一个接口?
解决方案
一个过分的例子可能是......
SELECT
CASE WHEN EXISTS(
SELECT *
FROM yourTable
WHERE <somecondition>
)
THEN 1 ELSE 0 END
推荐阅读
- c++ - C++20:强制使用指定的初始化器来模拟命名函数参数
- windows - 修剪 ArrayList 元素
- php - 用 preg_replace() 删除引号
- vuejs2 - 在侧边栏抽屉中显示项目 - 嵌套循环 Vue.js
- jquery - Vuejs中Preloader组件的问题
- javascript - 未捕获的类型错误:在输入单击时无法读取 null 的属性“样式”
- excel - 使用 VBA 将时间戳添加到 Excel
- c# - 锚href代码隐藏c#
- c++ - 函数参数究竟是什么时候被破坏的?
- ms-access - 如何摆脱“您输入的表达式超出查询设计的1,024个字符限制”