标签: SQL
-
本文探讨了在 Yii 2.0 框架中使用查询构建器定义 LIKE 操作符 WHERE 条件的具体实现。通过设置操作数,包括字段名称、模糊查询值以及可选的转义映射参数,能够灵活控制 SQL 语句的生成逻辑。文章详细说明了如何通过禁用转义功能或使用数组,生成以特定字符前缀开始的查询语句,最终生成的 SQL 语句符合预期。
-
本文探讨了在 Yii 2.0 框架中使用 ActiveDataFilter 实现对不存在字段的筛选参数支持。针对选题列表中通过程序计算得出的“是否已延期”字段需求,文章分析了计算规则并推导出待生成的查询 SQL。最终结论指出,若需让表中不存在的字段参与筛选,必须将其转换为表中已存在的字段,从而利用框架自带的底层实现,避免手动转换筛选参数。
-
本文针对产品部署时初始化数据的场景,介绍了如何在 MySQL 的 SQL 文件中定义与使用变量。由于多条 SQL 语句的执行依赖于前序语句生成的主键 ID,文章演示了通过变量传递参数的具体 SQL 写法,并记录了脚本运行前后的数据库表状态。最终验证显示脚本运行成功,各表中的记录 ID 值均符合预期,实现了数据的正确初始化。
-
针对 Yii 2.0 中企鹅号任务发布后入库失败无法查询记录的问题,文章放弃了客户端冗余存储方案,采用新建预发布日志表并增大字段长度的设计。通过创建继承 ActionFilter 的过滤器,在动作执行后根据返回码非 10000 时插入记录,并利用 UNION ALL 语法合并查询结果,成功实现了入库成功与失败皆可查询的功能。
-
本文记录了基于阿里云将个人博客迁移升级的过程。由于容器服务费用超出预算,最终决定沿用原生系统,将数据盘扩容并升级至CentOS 7.7,使用OneinStack自动部署LNMP环境与PHP 7.4。配置云数据库RDS后,通过导入SQL文件并修改WordPress配置文件完成了数据迁移,最终实现了博客成功跳转、支持HTTPS及WordPress版本的正常升级。
-
针对 MySQL 5.6 与 5.7 版本,本文记录了利用 EXPLAIN 分析查询并添加索引的优化过程。通过对 pa_plan_task 及其关联表分别添加 idx_group_id、idx_create_user_id 等索引,观察到部分表的扫描类型从 ALL 变为 ref,性能提升明显。随后调整 SQL 语句合并重复逻辑,并为相关表添加 idx_is_deleted 索引,最终改变了执行计划中的连接顺序,减少了排序与临时表的使用,总体性能得到改善。
-
本文介绍了在 Yii 2.0 中针对租户任务类型与步骤设置的编辑更新实现,为配合 UI 设计并降低前端开发难度,将原有的单一更新接口拆分为新建、更新及删除任务类型三个独立接口。文章详细说明了保留批量更新路由配置的方法,调整了模型与服务文件,并通过 Postman 测试验证了各接口对任务配置表及任务步骤配置表的 SQL 操作逻辑。最终实现了拆分后的接口与前端界面的一致性,确保了数据的准确更新。
-
本文探讨了在 Yii 2.0 框架中基于数据提供者实现类似禅道任务列表的排序功能。针对默认配置下无法实现主字段相同时按 ID 辅助排序的问题,文章通过配置 yii\data\Sort 属性的 asc 与 desc 元素,定义了包含 ID 的复合排序规则。测试结果表明,调整后的 SQL 查询 ORDER BY 子句能够正确执行单字段或组合字段的升序与降序排列,未定义的字段则回退至默认排序。
-
针对 Yii 2.0 中 MySQL 5.6 数据库 text 类型存储的 JSON 数据,本文解决了如何修改 JSON 字符串中特定字段值的需求。在 pub_log 表的 data 字段中,需将 channel_app_task_status 值从 6 替换为 7。文章展示了使用 SQL 进行搜索与替换的操作过程,执行后成功影响了 1 行数据,并介绍了通过数据库迁移文件生成该 SQL 的实现方法,最终验证数据修改符合预期。
