当前位置: 首页 > 面试题库 >

将两个不相关查询的结果合并到单个视图中

顾淳
2023-03-14
问题内容

是否可以将两个单独的(不相关的)SQL查询的结果合并到一个视图中。我正在尝试汇总一些用户数据并计算本月视频的观看次数,以显示在仪表板上。

IE,

select count(*) from video where monthname(views) = 'May';

select sum(sessions) from user where user_id = 6;

我想创建一个包含这两个结果的视图。

这可能吗?


问题答案:
SELECT t2.total_session,
       t1.watch_count
FROM
  (SELECT 1 AS common_key,
          count(*) AS watch_count
   FROM video
   WHERE monthname(views) = 'May') AS t1
JOIN
  (SELECT 1 AS common_key,
               sum(sessions) AS total_session
   FROM USER
   WHERE user_id = 6) AS t2 ON t1.common_key = t2.common_key;

当然,仅当t1和t2中的输出均为一行时,这才是非常有效的。



 类似资料:
  • 问题内容: 查询1: 查询2: 我想将两个结果合并为两列,其中缺少一列=查询2-查询1以加快处理速度。我该怎么做?示例: 我有两个结果: // ----------------------------------------查询:1 1 2 3 4 // --------------------------------------查询:2 4 5 6 8 // ------------------

  • 在SQL Server中,我有两个来自两个表的查询。 第一个表“Values1”有两列:“index1”和“value1”。第二个表“Values2”有“index2”和“value2”列。 我想要一个查询,对于一对索引值“d1”和“d2”,可以输出所有“index1”和“value e1”行,其中对应的index1在“d1”和“d2”之间,以及“Values2”表中具有“index2”值在“d1

  • 问题内容: 我有两个查询,每个查询返回一个结果,即一个数字 结果 。 结果 我希望将两个结果合并为一行记录,即 问题答案: 您可以使用: 说明:您可以在select语句中选择单个值作为字段,因此可以编写如下内容: 这仅对 标量 查询有效 ,这意味着子查询应具有精确的1列,最多1行。如果有0行,则ValueFromY将返回,而如果有1行以上,则查询将失败。 (在SQL Server,MySQL和其他

  • 问题内容: 我有桌子 表格1 和表2 我想将两个没有公用字段的表合并到一个表中,如下所示: 表3 即,就像将两个桌子并排放置。 我被卡住了!请帮忙! 问题答案: 为每个表中的每一行获取一个行号,然后使用这些行号进行完全连接: 这是假定SQL Server> = 2005。

  • 问题内容: 结合这两个查询的正确语法是什么? 和 我试过了: 但我收到“ UNION和ORDER BY的用法不正确”。 编辑 此外,我希望结果在一行中返回。这样我就可以访问php中的值,例如 根据西蒙的建议,我不应该使用UNION,因为我想返回一行数据 问题答案: 您不能先进入,然后再进入。 编辑 但是你可以 将ORDER BY或LIMIT应用于单个SELECT,将子句放在包围SELECT的括号内

  • 问题内容: 是否可以将两个表(具有相同的字段)中的数据捕获到一个视图中。基本上,因此视图将数据视为一个表。 问题答案: 是的,使用UNION- …要求列数相同,并且每个位置的数据类型都匹配。 ..优选地,使用JOIN: 但是我要警告不要依赖于视图-如果未实现,它们只是准备好的SQL语句。没有性能优势,如果您基于另一个视图构建视图,则会对性能产生负面影响。此外,视图是脆弱的- 它们可以更改,如果有问