gpt4 book ai didi

mysql - 选择一行时增加一个值 SQL

转载 作者:行者123 更新时间:2023-11-29 02:29:57 25 4
gpt4 key购买 nike

有没有什么方法可以从本质上跟踪从 SQL 表中提取一行的次数?

例如,在我的表中,我有一个列数。每次 SQL 语句提取特定行(我们称之为 rowA)时,rowA 的“计数”值增加 1。

无论是在表的设置中还是在语句中都可以,但我找不到这样的东西。

我知道我可以将它分成两个语句来实现相同的目的,但我宁愿只发送一个。

最佳答案

执行此操作的最佳方法是将表的读取访问权限限制为存储过程。

此存储过程将采用各种输入(过滤器选项)来确定返回哪些行。

在返回行之前,它们的计数器字段会递增。

请注意,update 和 select 命令共享相同的 where 子句。

create procedure Select_From_Table1
@pMyParameter varchar(20), -- sample filter parameter
as

-- First, update the counter, only on the fields that match our filter
update MyTable set Counter = Counter + 1
where
MyFilterField like CONCAT('%', @pMyParameter, '%') -- sample filter enforcement

-- Now, return those rows
select
*
from
MyTable
where
MyFilterField like CONCAT('%', @pMyParameter, '%') -- sample filter enforcement

一个不错的选择是在数据访问层的应用程序端处理它。

关于mysql - 选择一行时增加一个值 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14804017/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com