【问题标题】:Stored procedure to update the count更新计数的存储过程
【发布时间】:2017-04-17 23:37:24
【问题描述】:

我有以下 2 个 SQL 表

Table 1
Id | Data | Values
1  | rfsd | 23
2  | tfgy | 45
3  | rfff | 23


Table 2

Id | Fields | Counts
1  | 23     |   0 
2  | 45     |   0

如您所见,计数字段为 0。我想查看表 2 中的“字段”列,然后与表 1 中的“值”列进行比较,并在“值”中出现值时增加计数字段。

最终结果应该是这样的

Table 2
Id | Fields | Counts
1  | 23     |   2
2  | 45     |   1

这将是表 1 的“值”字段中 23 出现两次和 45 出现一次的计数。

谁能告诉我如何为此编写存储过程。

【问题讨论】:

    标签: c# mysql sql-server stored-procedures


    【解决方案1】:

    把它放在一个存储过程中。

    WITH t1 AS (
    SELECT
        VALUES
        , COUNT(*) AS Count2
    FROM
        Table1
    GROUP BY
        VALUES
    )
    UPDATE t2
    SET Counts = t1.Count2
    FROM
        Table2 t2
        JOIN t1 ON t2.Fields=t1.Values
    

    【讨论】:

      猜你喜欢
      • 2013-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-20
      • 1970-01-01
      • 2021-07-18
      • 1970-01-01
      相关资源
      最近更新 更多