如何更新销售表中具有唯一日期价格组合的行?
Jan 23, 2025 am 05:52 AM使用独特的日期价格组合更新销售记录
本指南演示如何识别和更新销售表中拥有唯一价格-日期组合的销售记录。 目标是仅更新那些销售条目,不存在任何共享相同价格和日期的重复条目。
一种方法涉及使用 SQL 查询的两步过程:
第 1 步:识别独特的组合
以下查询选择唯一的 saleprice
和 saledate
组合,及其相应的 id
和出现次数:
SELECT DISTINCT saleprice, saledate, id, COUNT(*) AS count FROM sales GROUP BY saleprice, saledate HAVING COUNT(*) = 1;
登录后复制
此查询按 saleprice
和 saledate
对销售记录进行分组,然后使用 HAVING
过滤结果以仅保留那些计数为 1 的组,表示唯一的组合。
第 2 步:更新销售表
要将这些唯一销售记录的 status
更新为“ACTIVE”,请使用以下查询:
UPDATE sales SET status = 'ACTIVE' WHERE id IN ( SELECT id FROM sales s INNER JOIN ( SELECT saleprice, saledate FROM sales GROUP BY saleprice, saledate HAVING COUNT(*) = 1 ) AS unique_sales ON s.saleprice = unique_sales.saleprice AND s.saledate = unique_sales.saledate );
登录后复制
此查询更新 sales
表,将 status
与子查询中标识的记录匹配的记录的 id
设置为“ACTIVE”。子查询有效地检索与唯一的 id
和 saleprice
组合关联的 saledate
值。 INNER JOIN
确保仅更新匹配的记录。
此方法利用 GROUP BY
和 HAVING
子句的强大功能来有效地跨多个列执行不同的选择并实现所需的更新。
以上是如何更新销售表中具有唯一日期价格组合的行?的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章
仓库:如何复兴队友
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
Hello Kitty Island冒险:如何获得巨型种子
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前
By 尊渡假赌尊渡假赌尊渡假赌
公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验?
3 周前
By 王林

热门文章
仓库:如何复兴队友
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
Hello Kitty Island冒险:如何获得巨型种子
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前
By 尊渡假赌尊渡假赌尊渡假赌
公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验?
3 周前
By 王林

热门文章标签

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

在 Linux 中运行 MySQl(有/没有带有 phpmyadmin 的 podman 容器)
