gpt4 book ai didi

mysql - 根据计数查询的结果插入记录数

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

我有一个应用程序,可以跟踪管理员在 admin_comments 表中采取的操作。

最近,我被要求创建一个新表 admin_stats 来跟踪应用程序某些区域的生产力。

我已将其实现到我的代码逻辑中,因此所有统计信息都会被跟踪,但他们问我是否还可以通过搜索 admin_comments 表来添加所有以前的统计信息对于适当的字段。

我的 admin_comments 表如下所示:

+----+---------+----------+---------+------+
| id | user_id | admin_id | comment | type |
+----+---------+----------+---------+------+

admin_stats 表如下所示:

+----+----------+---------+------+--------+
| id | admin_id | user_id | type | action |
+----+----------+---------+------+--------+

首先,我只想将声明导入到该表中。 claim 要么批准拒绝暂时拒绝永久拒绝,我已经获得了每个 claim 的计数管理员使用此查询执行的操作:

select admin_id, 
SUM(CASE WHEN comment like 'Approved the claim for%' THEN 1 ELSE 0 END) as Approved,
SUM(CASE WHEN comment like 'Rejected the claim for%' THEN 1 ELSE 0 END) as Rejected,
SUM(CASE WHEN comment like 'Temporarily rejected (24 hour hold) the claim for%' THEN 1 ELSE 0 END) as TempReject,
SUM(CASE WHEN comment like 'Permanently rejected the claim for%' THEN 1 ELSE 0 END ) as PermReject
from admin_comments
where admin_id > 0
group by admin_id

这会产生如下结果:

enter image description here

有没有办法可以根据每个 admin_id 的计数执行插入?

即从上图中,我想在 admin_stats 中插入一条记录,以获取批准的操作,其中类型作为应用程序,并且一条记录被拒绝的操作的记录,其type作为admin_id 1的应用程序。

对于 admin_id 4,我想插入 25 个批准的 actions、12 个拒绝的 actions 和 2 个 tempreject行动。

因此每个操作都应作为新行输入,类型 将始终为应用程序。

最佳答案

我认为你正在尝试这样做。

insert into admin_stats(admin_id,type,action) --add other columns as needed
select admin_id,'application' as type,
case when comment like 'Approved the claim for%' then 'Approved'
when comment like 'Rejected the claim for%' then 'Rejected'
when comment like 'Temporarily rejected (24 hour hold) the claim for%' then 'TempReject'
when comment like 'Permanently rejected the claim for%' then 'PermReject'
end as action
from admin_comments
where admin_id > 0
and (comment like 'Approved the claim for%'
or comment like 'Rejected the claim for%'
or comment like 'Temporarily rejected (24 hour hold) the claim for%'
or comment like 'Permanently rejected the claim for%')

关于mysql - 根据计数查询的结果插入记录数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41602406/

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