Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何使用另一个表中的sum更新表?_Sql_Sql Server - Fatal编程技术网

Sql 如何使用另一个表中的sum更新表?

Sql 如何使用另一个表中的sum更新表?,sql,sql-server,Sql,Sql Server,我有3个表data_kabupaten、master_data和kampus data_kabupaten +--------------+----------+----------+---------+ |kota/kabupaten|perbulan |j_penduduk|rata-rata| +--------------+----------+----------+---------+ |makassar |2016-06-31| | |

我有3个表data_kabupaten、master_data和kampus

data_kabupaten
+--------------+----------+----------+---------+
|kota/kabupaten|perbulan  |j_penduduk|rata-rata|
+--------------+----------+----------+---------+
|makassar      |2016-06-31|          |         |
|makassar      |2016-07-31|          |         |
|makassar      |2016-08-31|          |         |
|...           |...       |          |         |
+--------------+----------+----------+---------+

master data                 kampus
+--------------+-------+    +---------+-------+
|kota/kabupaten|id_kota|    |nim      |kota_id|
+--------------+-------+    +---------+-------+
|makassar      |m012   |    |238011003|m012   |
|makassar      |m012   |    |...      |...    |
|makassar      |m012   |    +---------+-------+
|...           |...    |
+--------------+-------+
如何使用更新我的数据\u kabupaten表

j_penduduk=countdistinct[nim]


使用下面的查询

    UPDATE kp
       SET kp.J_penduduk=t.cntNim
     FROM data_kabupaten kp
      JOIN master_data md 
        on kp.[kota/kabupaten] = md.[kota/kabupaten]
       JOIN (SELECT kota_id,Count( distinct Nim) CntNim
                  FROM Kampus k
                  GROUP BY kota_id)t
            On md.id_kota= t.kota_id

使用下面的查询

    UPDATE kp
       SET kp.J_penduduk=t.cntNim
     FROM data_kabupaten kp
      JOIN master_data md 
        on kp.[kota/kabupaten] = md.[kota/kabupaten]
       JOIN (SELECT kota_id,Count( distinct Nim) CntNim
                  FROM Kampus k
                  GROUP BY kota_id)t
            On md.id_kota= t.kota_id
这里使用公共表表达式cte来获取每个[kota/kabupaten]值的不同计数。然后从cte更新数据表


这里使用公共表表达式cte来获取每个[kota/kabupaten]值的不同计数。然后从cte更新您的数据\u kabupaten表。

谢谢它解决了我的问题,因为我只能加入一个表使用内部联接谢谢它解决了我的问题,因为我只能加入一个表使用内部联接