SQL Query 或 View with columns 取决于 SELECT 查询
Posted
技术标签:
【中文标题】SQL Query 或 View with columns 取决于 SELECT 查询【英文标题】:SQL Query or View with columns depends on SELECT query 【发布时间】:2012-02-27 14:10:53 【问题描述】:我的问题可能很愚蠢,而且不会那么容易准确地写下来。然而,可以理解的例子。我正在创建一个系统日志数据库,它定期存储来自硬件的值。 我的表格(复杂性非常低)是:
VARIABLES table
id_variable name_variable
1 Temperatur
2 Voltage
... ...
n VariableN
LOG_ROWS table
id_log_row timestamp
1 2012.01.01. 10:00:00
2 2012.01.01. 10:01:00
3 2012.01.01. 10:02:00
n 2012.01.01. 10:0n:00
LOG_VALUES table
id_log_value id_log_row id_variable value
1 1 1 34
2 1 2 1200
3 2 1 35
4 3 1 36
5 3 2 1230
数据结构很重要,因为我必须在以后添加新变量而不改变表,并且每个变量都有其他存储时间段。 (并非所有 log_rows 都包含 all 变量。这里电压的时间段是 2 分钟,温度的时间段是 1 分钟)
所以,我想创建可读性好的 db 视图,其中列是变量 id 或名称(这里是名称)与 log_row 的 id 和时间戳相连。类似的东西。
id_log_row timestamp Temperatur Voltage ... N
1 2012.01.01. 10:00:00 34 1200 NULL
2 2012.01.01. 10:01:00 35 NULL NULL
3 2012.01.01. 10:02:00 36 1230 ... NULL
这些视图可以用 SQL 实现吗?根据表格内容定义列。我有兴趣。我想在 SQLite 中创建它
【问题讨论】:
【参考方案1】:SQLite 不会support 更改视图。将数据设计成以后必须更改表的方式通常是一个坏主意。
【讨论】:
在没有alter table的情况下进行良好配置的能力比这些视图重要得多。有了这些视图,只写查询会更容易。所以,我认为我无法避免这些数据结构。以上是关于SQL Query 或 View with columns 取决于 SELECT 查询的主要内容,如果未能解决你的问题,请参考以下文章