需要帮助创建OUTER JOIN来计算空间

时间:2018-04-14 01:45:34

标签: sql sql-server

我有一个表格Lab_Space_Id,其中列出了我的所有实验室,并且有一个Campus_Name列是关键,一个vw_Subnets列,还有一堆其他列。

然后在Lab_Space_Id表中,这是一个每个子网的列表,我有一个同名Subnet_Name的外键和Campus_Name的不同键

我尝试为每个vw_Subnets确定总共有多少个实验室,以及与至少一个子网关联的实验室数量。许多实验室将有0个与之相关的子网...即。 Lab_Space_Id中没有该实验室OUTER JOIN的条目。

所以我认为我需要某种类型Campus_Name | Lab_Space_Id -------------------------- Red | 1 Red | 2 Green | 3 Blue | 4 Blue | 5 Lab_Space_Id | Subnet_Name -------------------------- 1 | A 3 | B ,但我无法提出正确的语法。

Campus | # Labs | # Labs with Subnets  
-------------------------------------
Red    | 2      | 1  
Green  | 1      | 1  
Blue   | 2      | 0  

输出将是:

<script>
  var td = document.getElementsByTagName("td");

  function waddonsclass() {
    td[0].className = "waddons-wsite-multicol-col";
    td[3].className = "waddons-wsite-multicol-col";
    td[6].className = "waddons-wsite-multicol-col";
    td[9].className = "waddons-wsite-multicol-col";
  }

  function normalclass() {
    td[0].className = "wsite-multicol-col";
    td[3].className = "wsite-multicol-col";
    td[6].className = "wsite-multicol-col";
    td[9].className = "wsite-multicol-col";
  }

  if ($(window).width() < 512) normalclass(); /*This line couldn’t work.*/

  $(window).resize(function() {
    if ($(window).width() < 512) normalclass();
    else waddonsclass();
  });
</script>

1 个答案:

答案 0 :(得分:0)

我怀疑你是在思考它

Select A.Campus_Name 
      ,Labs    = sum(1)
      ,SubNets = count(B.Lab_Space_ID)
 from YourTable1 A
 Left Join YourTable2 B on A.Lab_Space_Id = B.Lab_Space_Id
 Group By A.Campus_Name

返回

Campus_Name Labs    SubNets
Blue        2       0
Green       1       1
Red         2       1