【问题标题】:Cognos/Flexnet manager SQL - calculate value per time periodCognos/Flexnet manager SQL - 计算每个时间段的价值
【发布时间】:2015-04-09 11:07:39
【问题描述】:

我的任务是通过存储在 Flexnet 管理器 (flexlm) 控制的数据库中的数据分析许可证使用情况。我需要绘制的是在特定时间段内使用的并发许可证数量(高水位线)。我在执行此操作时遇到了一些麻烦,因为我对 SQL 或 BI 工具的经验很少。

我选择了 2 个表,license_eventslicense_features(这些表已针对特定用户和功能进行了过滤)。然后我完成了一个连接以创建一个 License_feature 表。样本数据如下:

CLIENT_PROJECT FEATURE_NAME LIC_COUNT START_TIME    EVENT_TIME DURATION 
BGTV           eclipse      1         1,422,272,438 1422278666 6,228 
BGTV           eclipse      1         1,422,443,815 1422443845 30 
BGTV           eclipse      1         1,422,615,676 1422615681 5 
BGTV           eclipse      1         1,422,631,395 1422631399 4 
BGTV           eclipse      4         1,422,631,431 1422631434 3 
BGTV           eclipse      1         1,422,631,465 1422631474 9 
BGTV           eclipse      1         1,422,631,472 1422631474 2 
BGTV           eclipse      2         1,422,632,128 1422632147 19 
BGTV           eclipse      1         1,422,632,166 1422632179 13 
BGTV           eclipse      6         1,422,632,197 1422632211 14 

我现在需要的是绘制这样的图表:

对于每一次(秒) sum(LIC_COUNT) 其中start_time time && end_time >= time

理想情况下,这应该给我在特定秒签出的并发许可证数量。如果我能在不同的时间段(例如几小时或几天)获得此信息,那就更好了。

我该怎么做呢?

【问题讨论】:

  • 您找到解决问题的方法了吗?如果您的问题的任何答案解决了它,请不要忘记通过单击答案旁边的灰色勾号来接受它。如果您以另一种方式解决了它,您可以发布自己的答案并接受它,以便您的解决方案可以帮助未来的访问者。

标签: sql database licensing cognos flexlm


【解决方案1】:

使用GROUP BY 关键字将SUM() 组合到特定列上。例如,将LIC_COUNTSUM()按每个START_TIME分组;

SELECT START_TIME, SUM(LIC_COUNT) AS TOTAL_LIC_COUNT
FROM YOUR_TABLE
GROUP BY START_TIME

现在,对于SUM() 所有LIC_COUNT START_TIMEEND_TIME 之间的每个增量,您需要在其他地方明确指定这些唯一值。例如,如果您创建了一个名为 UniqueTimes 的表,其中包含您最早的 START_DATE 和最后一个 END_DATE 之间的所有可能值。然后您可以执行以下操作;

SELECT UniqueTime, SUM(LIC_COUNT) AS TotalLicCount
FROM YOUR_TABLE
LEFT JOIN UniqueTimes ON (UniqueTime >= START_TIME AND UniqueTime <= END_TIME)
GROUP BY UniqueTime

这应该将您的行分组为每个唯一时间,并显示每个特定时间所有总和 LIC_COUNT 的总数。

我希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-22
    • 2020-03-02
    相关资源
    最近更新 更多