代码之家  ›  专栏  ›  技术社区  ›  harpo

如何连接到SQL中的“固定向量”?

  •  0
  • harpo  · 技术社区  · 16 年前

    “固定向量”是指静态值列表,如1到24。

    当前查询如下(简化)

    SELECT Period, Profit FROM Projections
    

    但是数据是“稀疏的”——所以每个周期都没有行。

    什么查询每次都会为peiods 1-24提供一行,其中没有数据的地方有零(或空)?

    我只想通过查询来完成这项工作,以避免客户机代码混乱。

    谢谢!

    2 回复  |  直到 16 年前
        1
  •  1
  •   James Orr    16 年前

    您可以创建一个名为udfrange(start int,count int)的udf或类似的东西,并左连接到函数的输出。

    或者对于一些非常快速和肮脏的东西,您可以加入一个看起来像

    SELECT DATA.Period, P.Profit
    FROM (
    SELECT 1 AS Period
    UNION SELECT 2
    ...
    UNION SELECT 24) AS DATA 
    LEFT JOIN Projections P ON DATA.Period = P.Period
    
        2
  •  1
  •   Harper Shelby damiankolasa    16 年前

    为什么不创建一个“期间”查阅表格,其值为1-24(以及可能相关的任何其他列,如对期间的描述或其名称),然后在“期间”查阅表格和投影表之间进行左外部联接。