暂无个人介绍
润乾报表NLQ组件摒弃大模型路线,采用规则词典与领域知识库,将自然语言精准转化为MQL查询语言,实现稳定、低成本、可维护的ChatBI。其核心在于结构化语义解析,避免“幻觉”,支持复杂多表关联与计算,适用于企业级BI场景,是可靠高效的自然语言查询解决方案。
SPL 重构关联计算,区分外键与主键关联,通过序号化、预加载和预关联实现高效运算。相比 SQL 笛卡尔积式 JOIN,SPL 利用关联本质优化存储与计算,显著提升性能,如案例中查询提速数十倍。
不同数据库的 SQL 语法存在差异,尤其是函数写法不同,导致 SQL 移植困难。SPL 提供 sqltranslate 函数,可将标准 SQL 转换为特定数据库语法,实现 SQL 语句在不同数据库间的无缝迁移,支持多种数据库函数映射与自定义扩展。
本案例涉及车辆、交通、公民系统多源数据混合计算,重点演示SPL对不同表关系(维表关联、主子表关联)的高效处理。通过区分关联类型,SPL可自动选择最优算法,提升计算效率,适用于大规模数据分析场景。
SPL 支持通过 JDBC 连接 RDB,可动态生成 SQL 并传参,适用于 Java 与 SQL 结合的各类场景。本文以 MySQL 为例,演示如何配置数据库连接、编写 SPL 脚本查询 2024 年订单数据,并支持参数过滤和 SQL 混合计算。脚本可在 IDE 直接执行或集成至 Java 应用调用。
在数据源多样化的背景下,实现异构数据混合计算是常见需求。传统方案如逻辑数仓复杂且支持有限,而 esProc SPL 凭借丰富的数据源支持和轻量架构,提供便捷的多源混算能力,适用于多种应用场景。
多源混合计算是数据分析的常见需求,但传统SQL逻辑数据仓库能力有限且体系沉重,难以满足轻量场景需求。SPL(Structured Process Language)以其丰富的数据源支持和简洁语法,为多源混算提供了高效解决方案。SPL将各类数据源统一为序表或游标,支持同构与异构数据混合计算,可嵌入应用中使用。它不仅兼容SQL,还支持CSV、Excel、JSON、MongoDB、Kafka等多类型数据源,并通过游标机制处理大数据计算。课程提供免费学习资源,助您快速掌握多源融合计算技能,实现跨库/文件/API/NoSQL的轻松混算。
数据库和文件系统各有优劣:数据库读写性能较低、结构 rigid,但具备计算能力和数据一致性保障;文件系统灵活易管理、读写高效,但缺乏计算能力且无法保证一致性。针对仅需高效存储与灵活管理的场景,文件系统更优,但其计算短板可通过开源工具 SPL(Structured Process Language)弥补。SPL 提供独立计算语法及高性能文件格式(如集文件、组表),支持复杂计算与多源混合查询,甚至可替代数据仓库。此外,SPL 易集成、支持热切换,大幅提升开发运维效率,是后数据库时代文件存储的理想补充方案。
数据中台曾被视为企业数字化转型的利器,但因技术落地难题逐渐遇冷。核心问题在于缺乏高效的计算引擎,传统技术如 Java 和 SQL 在处理复杂结构化数据时效率低下、成本高昂。开源计算引擎 SPL 专为解决这一痛点而生,具备独立完备的计算能力、支持多样数据源的开放性以及敏捷语法和热切换特性,可显著提升开发效率与灵活性,助力数据中台真正落地并发挥价值。
传统交易型数据库在分析计算中常遇性能瓶颈,将数据迁至OLAP数据仓库虽可缓解,但成本高、架构复杂。SPL通过轻量级列存文件存储历史数据,提供强大计算能力,大幅简化架构并提升性能。它优化了列式存储、数据压缩与多线程并行处理,在常规及复杂计算场景中均表现优异,甚至单机性能超越集群。实际案例中,SPL在250亿行数据的时空碰撞问题上,仅用6分钟完成ClickHouse集群30分钟的任务。
ORM 技术虽简化了基础 CRUD,但在力不从心。Hibernate HQL 动态列运算困难,JOOQ 虽灵活但代码冗长。esProc SPL 则提供了更简洁直观的解决方案:多层 JOIN、动态条件、跨库分析等复杂操作仅需几行脚本,语法比 SQL 更清晰。支持动态数据结构,无需预定义实体类;实时流处理、跨源混合分析游刃有余。SPL 独立于 Java 代码,热更新特性让业务逻辑调整秒级生效,避免重新编译部署。它不是 ORM 的替代品,而是其有力补充,专为复杂计算而生,助开发者事半功倍。
esProc SPL 处理多层 JSON 数据比 DuckDB 更便捷,尤其在保留 JSON 层次与复杂计算时优势明显。DuckDB 虽能通过 `read_json_auto()` 将 JSON 解析为表格结构,但面对深层次或复杂运算时,SQL 需频繁使用 UNNEST、子查询等结构,逻辑易变得繁琐。而 SPL 以集合运算方式直接处理子表,代码更简洁直观,无需复杂关联或 Lambda 语法,同时保持 JSON 原始结构。esProc SPL 开源免费,适合复杂 JSON 场景,欢迎至乾学院探索!
跨库计算是数据分析中的常见难题,尤其涉及多数据库系统时,表间 JOIN 操作复杂度显著提升。esProc 提供了一种高效解决方案,能够简化跨库 JOIN 的实现。例如,在车辆管理、交管和公民信息系统中,通过 esProc 可轻松完成如下任务:按城市统计有车公民事件数量、找出近一年获表彰的车主信息,以及按年份和品牌统计车辆违章次数。esProc 支持不同关联场景(如维表关联与主子表关联)的优化算法,如内存索引、游标处理和有序归并,从而大幅提升编码和运算效率。无论是同构还是异构数据源,esProc 均能灵活应对,为复杂数据分析提供强大支持。
本文介绍了一种通过计划入库量和入库后库存倒推初始零库存日期的方法,并补充每日入库前的库存(UPDATED_CUSTQTY)。以 2 月 26 日为例,通过逐日倒推计算每条记录的入库前库存,直到找到零或负库存的起始日。传统 SQL 实现复杂,因缺乏天然序号需借助窗口函数。而 SPL 提供更直观的解决方案:加载数据逆序排序、过滤指定日期前记录、循环修改每条记录的入库前库存值,最终返回完整数据,代码简洁高效。
当数据库查询因数据量大或繁忙变慢时,可借助 esProc 将数据导出为文件进行计算,大幅提升性能。以 MySQL 的 3000 万行订单数据为例,两个典型查询分别耗时 17.69s 和 63.22s。使用 esProc 转储为二进制行存文件 (btx) 或列存文件 (ctx),结合游标过滤与并行计算,性能显著提升。例如,ctx 并行计算将原查询时间缩短至 0.566s,TopN 运算提速达 30 倍。esProc 的简洁语法和高效文件格式,特别适合历史数据的复杂分析场景。
esProc 是一款强大的数据处理工具,可简化 Java 处理 Restful 接口返回的复杂多层 JSON 数据的难题。通过 esProc,不仅能轻松访问和解析 Restful 数据,还能高效完成复杂计算任务,并可无缝嵌入 Java 应用中作为计算引擎使用。例如,筛选特定分类订单或计算金额,esProc 的脚本简洁直观,远优于传统 SQL 或纯 Java 实现。此外,esProc 支持安全认证(如 Cookie 和 Token)及 JDBC 集成,为开发者提供灵活高效的解决方案。
esProc 是一款独立于数据库的计算引擎,支持多数据源混合计算,尤其适用于冷热数据库分离场景下的复杂查询。通过配置 MySQL 等数据库连接,esProc 可轻松实现跨库(同构/异构)的数据整合与计算。例如,将热数据存储在 hotdb,冷数据存储在 colddb,利用 esProc 脚本按时间范围查询并汇总订单金额,最终嵌入 Java 应用调用。其简单高效的特性,让冷热数据混算变得更加便捷,同时支持文件系统等多样化数据源,极大扩展了应用场景。
在多数据源混算领域,esProc凭借其强大的数据源支持能力脱颖而出。它不仅覆盖主流关系数据库、非关系数据库、文件格式、消息队列、大数据平台等,还支持通过简单封装扩展新数据源,无需复杂建模。esProc采用轻机制直接读取原始数据,用统一的SPL脚本语言进行混合计算,同时兼容SQL语法,灵活高效。作为纯Java开发工具,esProc易于嵌入企业系统,支持结构化、半结构化及动态数据处理,是目前支持数据源最广、扩展性最强的计算技术之一。更重要的是,esProc完全免费,值得尝试。
业务数据常具层次关系,如订单包含客户、明细及产品等嵌套信息,JSON 的可嵌套结构非常适合描述这种关系。然而,传统 SQL 仅支持平面表,处理嵌套结构时需展开或使用特殊函数与 lambda 语法,代码复杂且不一致。Python 虽支持多层结构,但对多行嵌套字段的处理较为繁琐。相比之下,SPL 实现了多层嵌套表机制,字段皆为对象,计算方法一致,代码简洁易懂,是处理嵌套结构数据的专业语言。欢迎体验免费 esProc SPL!
在现代商业中,数据分析至关重要,但传统BI工具和编程语言如Python、SQL等各有局限。Excel虽交互性强,但面对复杂计算和大数据时力不从心。esProc Desktop作为后Excel时代的数据分析神器,采用SPL语言,具备强大的表格计算能力和天然的大数据支持,可显著降低复杂计算难度。其强交互性、简短代码和内嵌Excel插件功能,让业务人员轻松完成多步骤交互式计算,是理想的数据分析工具。现提供免费使用及丰富学习资源。
esProc SPL 是一款支持简单 SQL 的计算工具,可直接在结构化文本文件(如 CSV、TXT)上执行 SQL 语句,无需数据库即可完成数据分析。它根据文件扩展名自动识别分隔符,支持无标题行文件的原生语法读取。功能涵盖 WHERE、GROUP BY、JOIN、CASE WHEN 等 SQL92 标准语法(不支持窗口函数),并可通过命令行执行。此外,esProc 还兼容 XLS、MongoDB、RESTful JSON 等数据源,适合交互式数据分析与调试。下载标准版安装后,即可通过 esProc IDE 编写和运行脚本。
DuckDB 和 esProc SPL 均支持多数据源处理,但在功能和灵活性上存在差异。DuckDB 支持常见文件格式(如 CSV、Parquet)、云存储及部分关系型数据库,依赖专用连接器,扩展性有限;esProc 数据源支持更广泛,涵盖多种本地文件、数据库(关系型与 NoSQL)、云存储及远程数据源,使用 Native 接口封装,扩展简便,适合多数据源混合计算。 在数据处理方面,DuckDB 对 CSV 和 Parquet 文件支持成熟,复杂计算需借助 Python,存在体系割裂;esProc 提供 双语法,尤其 SPL 在复杂计算和 JSON 多层结构处理上表现更直观高效。
SQL 只提供了最基础的聚合运算,稍复杂一些的任务都会非常困难;Python 要好很多,有更丰富的概念和运算,能够完成更复杂的计算任务,但是概念体系比较杂乱,语法风格在不同情况下不一致,难学难记,代码也较为繁琐。SPL 概念清晰,语法风格一致,可以写出最简洁易懂的代码。
列式存储通过减少硬盘访问量和高效压缩,显著提升数据分析性能。然而,传统列存技术如Hadoop、MPP数据库等架构复杂、成本高。esProc的ctx文件提供了一种轻量级列存解决方案,支持高效的数据压缩、分段并行计算及简单易用的SPL编程语言。ctx文件适用于大数据量存储,读取性能优于ORC和Parquet,且无需复杂环境配置,适合嵌入Java应用,特别适用于报表缓存场景。SPL已开源免费,欢迎了解。
分组是结构化数据计算的常见操作,SQL 和 Python 均支持分组聚合,但功能较为有限。相比之下,esProc SPL 提供了更强大的分组运算能力,尤其在处理分组子集和有序分组时表现出色。例如,SPL 可轻松实现复杂场景如筛选人数大于10的部门员工、计算股票最长连涨天数等。SPL 支持真正的分组子集概念及连续操作,代码简洁易懂,远超 SQL 和 Python。此外,SPL 还提供对位分组、枚举分组等多种独特方法,堪称史上最强。SPL 是开源免费的,欢迎前往乾学院了解更多。[源码地址](https://github.com/SPLWare/esProc)
SPL(Structured Process Language)是一款结合了强大计算能力和灵活交互性的数据分析工具,特别适合探索式数据分析。它不仅支持分步执行和实时查看每步结果,还提供了丰富的表格数据计算类库,简化复杂运算。与Excel相比,SPL在处理复杂逻辑时更加简洁高效;相较于SQL和Python,SPL具备更好的交互性和更直观的操作体验。通过SPL的XLL插件,用户可以在Excel环境中直接使用SPL的强大功能,充分发挥两者优势。SPL开源免费,是探索式数据分析的理想选择。
SQL 在简单数据分析任务中表现良好,但面对复杂需求时显得力不从心。例如,统计新用户第二天的留存率或连续活跃用户的计算,SQL 需要嵌套子查询和复杂关联,代码冗长难懂。Python 虽更灵活,但仍需变通思路,复杂度较高。相比之下,SPL(Structured Process Language)语法简洁、支持有序计算和分组子集保留,具备强大的交互性和调试功能,适合处理复杂的深度数据分析任务。SPL 已开源免费,是数据分析师的更好选择。
关系数据库和SQL在企业级应用中面临诸多挑战,如复杂SQL难以移植、数据库负担重、应用间强耦合等。Python虽是替代选择,但在大数据运算和版本管理方面存在不足。SPL(esProc Structured Programming Language)作为开源语言,专门针对结构化数据计算,解决了Python的这些硬伤。它提供高效的大数据运算能力、并行处理、高性能文件存储格式(如btx、ctx),以及一致的版本管理,确保企业级应用的稳定性和高性能。此外,SPL与Java无缝集成,适合现代J2EE体系应用,简化开发并提升性能。
流数据源的动态无界特性使得传统数据库技术难以直接处理,而Heron、Samza、Storm、Spark、Flink等计算框架在流计算领域取得了先发优势。然而,这些框架往往侧重于访问能力,计算能力不足,尤其在高级计算如流批混算、复杂计算和高性能计算方面表现欠佳。esProc SPL作为基于JVM的轻量级开源计算类库,专注于提升流计算的计算能力,支持丰富的流数据访问、灵活的集成接口和高效的内外存存储格式,具备强大的高级计算功能,能够简化业务逻辑开发并适应多样的应用场景。SPL通过专业的计算语言和结构化数据处理能力,为流计算提供了更优的解决方案。
在数据分析领域,Excel 和 BI 工具适合处理简单任务,但面对复杂分析(如跨行数据、滑动窗口等)时显得力不从心。编程语言虽有强计算能力,但交互性差,难以实时反馈结果。SPL(Structured Process Language)则结合了两者的优点,采用网格式编程,支持实时查看中间结果,并具备强大的有序和集合运算能力,使复杂任务变得简单直观。SPL 让数据分析师既能享受 Excel 的交互性,又能利用编程的强大计算能力,解决了强计算与交互性的两难问题。
TP 库与 AP 库的结合虽为业界通识,但在实际操作中面临诸多挑战。引入 AP 库不仅增加成本和运维复杂度,还可能导致 T+0 问题和迁移风险。esProc SPL 提供了一种轻量级、灵活的解决方案,作为专业的计算引擎,它无需数据库的复杂管理,支持高效计算和跨源混合计算,尤其在处理复杂任务时表现优异。SPL 语言简化了开发流程,提高了调试效率,且开源免费,是值得考虑的替代方案。
本文探讨了代码性能优化的重要性及实现方法。通过对比SQL与SPL(esProc Structured Process Language)在处理大数据查询时的效率差异,指出SQL在复杂查询中存在性能瓶颈,如全排序操作导致的低效问题。而SPL凭借其集合化和离散性特性,能够以更简洁的语法实现高效的算法设计,显著提升运行速度。例如,从1亿条数据中取前10名或进行分组TopN计算,SPL不仅代码量大幅减少,还能避免不必要的排序操作,实测显示其执行速度远超SQL。此外,SPL还支持复杂的漏斗分析等场景,进一步证明其在高性能计算领域的优势。SPL现已开源免费,值得开发者关注。
传统数据仓库基于封闭的数据库体系,继承了元数据管理和数据约束特性,导致其在处理多样化、实时性数据时面临诸多挑战。封闭性使得数据必须预先加载到数据库中才能进行计算,增加了ETL复杂性和延迟,难以满足现代应用对实时数据和跨源计算的需求。此外,封闭性还限制了数据湖的建设,导致中间表累积、资源浪费和运维困难等问题。 相比之下,基于文件系统的开放数据仓库(如esProc SPL)通过去除这些限制,提供了更高的灵活性和效率。文件存储成本低、管理方便,支持存算分离和跨源计算,适合处理大规模、多样化的数据源。 SPL不仅计算能力强,还能实现高效的文件存储和独创的高性能算法,大幅提升了数据分析的速度和实时性。
从一体机、超融合到云计算、HTAP,技术不断演进,旨在简化和提高效率。湖仓一体(Lakehouse)是当前热门趋势,旨在将数据湖和数据仓库融合,发挥两者优势。数据湖侧重存储原始数据,数据仓库则擅长结构化数据计算。然而,现有方案多为数据湖与数据仓库的松耦合,未能真正实现“既存又算”。开源集算器SPL通过开放计算引擎,直接处理数据湖中的原始数据,支持多数据源混合计算,提供高性能文件存储,实现了真正的湖仓一体。
数据分析师常需处理各种数据操作,如过滤、分组、汇总等,SQL 在这些基本需求上表现得心应手。然而,面对本地文件数据或更复杂需求时,SQL 的局限性显现。SPL(Structured Process Language)则提供了更灵活的解决方案,无需数据库环境,直接从文件计算,代码简洁易懂,调试工具强大,极大提升了数据分析的效率和交互性。
ORM技术如Hibernate、Mybatis和JOOQ简化了Java开发中的数据库操作,但它们在处理复杂计算时表现不佳。esProc SPL是一种基于Java的开源工具,通过提供一种新的脚本语言SPL,弥补了Java在处理复杂数据计算上的不足。SPL不仅支持丰富的数据计算函数,还能无缝集成到Java应用中,实现更简洁、高效的数据库操作和业务逻辑处理。此外,SPL支持多种数据源,提供强大的调试工具,适合频繁变化的业务需求。
随着数据量的增长和业务复杂度的提升,数据仓库性能问题日益凸显,如查询慢、跑批不完等。传统解决方案如集群、预计算和优化引擎虽有一定效果,但成本高、灵活性差或性能提升有限。esProc SPL 提供了一种新的解决思路,通过非 SQL 的计算体系,结合高性能算法和优化的数据存储,实现更高效的数据处理,尤其适用于复杂计算场景。
大数据产品常宣称“万亿秒查”,即能在万亿行数据中秒级返回查询结果。这并非全遍历,而是通过建立索引实现高效定点查找,对数级别复杂度使得现代计算机轻松应对。但对于需遍历的运算,如列合计,秒查在万亿行数据上难以实现,但在TB级数据上仍有可能。此外,与Oracle等传统数据库相比,现代AP数据库因列式存储、集群及内存优势,实现N倍速度提升,并非夸大。真正考验大数据技术的是能否提供独特算法降低计算量,而非单纯数据量与速度的宣传。
现代大数据应用架构中,数据中心作为核心,连接数据源与应用,承担着数据处理与服务的重要角色。然而,随着数据量的激增,数据中心面临运维复杂、体系封闭及应用间耦合性高等挑战。为缓解这些问题,一种轻量级的解决方案——esProc SPL应运而生。esProc SPL通过集成性、开放性、高性能、数据路由和敏捷性等特性,有效解决了现有架构的不足,实现了灵活高效的数据处理,特别适用于应用端的前置计算,降低了整体成本和复杂度。
SQLite 是一款轻量级数据库,适合小微型应用程序的数据处理和计算需求,但面对复杂场景如多数据源支持、复杂计算和流程处理时存在局限。esProc SPL 作为 Java 下的数据处理引擎,不仅具备 SQLite 的优势,还克服了其不足,支持多种数据源、强大的计算能力和流程处理,更适合复杂应用场景。
分布式技术在大数据处理中广泛应用,通过将任务拆分至多个节点执行,显著提升性能。然而,它并非万能药,适用于易于拆分的任务,特别是OLTP场景。对于复杂计算如OLAP或批处理任务,分布式可能因数据交换延迟、非线性扩展等问题而表现不佳。因此,应先优化单机性能,必要时再考虑分布式。SPL等工具通过高效算法提升单机性能,减少对分布式依赖。
SQL 和 Python 在数据科学领域虽广泛使用,但它们各自存在不少问题,如 SQL 代码复杂难写、调试困难、性能低下且封闭性高,而 Python 在复杂计算、调试及大数据处理方面同样不尽人意。这些问题严重消耗了数据科学家的时间和精力。esProc SPL 作为一种专为结构化数据处理设计的工具,以其简洁易懂的语法、强大的调试功能、高效的大数据处理能力和开放性,有效解决了上述问题,帮助数据科学家提高工作效率,更好地专注于业务分析。SPL 已经开源,可免费下载使用。
在大数据领域,尽管非结构化数据占据了大数据平台80%以上的存储空间,结构化数据分析依然是核心任务。SQL因其广泛的应用基础和易于上手的特点成为大数据处理的主要语言,各大厂商纷纷支持SQL以提高市场竞争力。然而,SQL在处理复杂计算时表现出的性能和开发效率低下问题日益凸显,如难以充分利用现代硬件能力、复杂SQL优化困难等。为了解决这些问题,出现了像SPL这样的开源计算引擎,它通过提供更高效的开发体验和计算性能,以及对多种数据源的支持,为大数据处理带来了新的解决方案。
本文探讨了SQL在实际应用中的复杂性和难度,指出教科书中的SQL例句虽然简单,但现实中的SQL查询往往长达数千行,涉及多层嵌套,对程序员构成挑战。文章分析了SQL的两个主要缺陷:集合化不彻底和缺乏有序支持,并通过具体示例展示了这些问题如何影响SQL的编写。最后,文章推荐使用esProc SPL,一种增强的编程语言,能够更自然地处理集合和有序数据,简化复杂查询的编写。
本文探讨了云计算环境下“算力无限”的误区,指出即使云上硬件资源看似无限,但由于网络延迟、算法模型限制及成本等因素,实际运算效率未必能线性扩展。文章强调了提高单机运算效率的重要性,推荐使用SPL等工具优化算法,以实现更高性能。
帐号去重计数是商业分析中的常见需求,通过 SQL 的 COUNT(DISTINCT ...) 实现。然而,当数据量庞大时,COUNT(DISTINCT) 的性能问题凸显,可能导致数据库崩溃。esProc SPL 通过有序数据处理和高效的去重算法,解决了这一难题,尤其适用于复杂的漏斗分析等场景,显著提升了计算效率和资源利用率。
JSON 是一种广泛使用的数据交换格式,但其计算和处理能力有限。esProc SPL 是一款强大的开源计算引擎,能够高效解析 JSON 数据,并支持复杂的过滤、分组、连接等操作。它不仅兼容多种数据源,如 RESTful、ElasticSearch、MongoDB 和 Kafka,还提供了游标对象处理大数据流,支持与 Java 应用无缝集成,实现灵活的业务逻辑处理。
大数据时代,分布式数仓如MPP成为热门技术,但其高昂的成本让人望而却步。对于多数任务,数据量并未达到PB级,单体数据库即可胜任。然而,由于SQL语法的局限性和计算任务的复杂性,分布式解决方案显得更为必要。esProc SPL作为一种开源轻量级计算引擎,通过高效的算法和存储机制,实现了单机性能超越集群的效果,为低成本、高效能的数据处理提供了新选择。
esProc 是一种非 SQL 型数据仓库,采用 SPL 作为查询语言,旨在解决 SQL 在复杂计算、开放性和性能等方面的局限。SPL 支持过程计算、有序运算及丰富的数据类型,能够直接处理多样数据源,无需数据先入库。此外,esProc 通过文件存储和高性能算法优化,实现了计算与存储的解绑,降低了运维成本,提升了计算性能。
SQLite 是轻量级数据库,适用于小微型应用,但其对外部数据源支持较弱、无存储过程等问题影响了开发效率。esProc SPL 是一个纯 Java 开发的免费开源工具,支持标准 JDBC 接口,提供丰富的数据源访问、强大的流程控制和高效的数据处理能力,尤其适合 Java 和安卓开发。SPL 代码简洁易懂,支持热切换,可大幅提高开发效率。
发表了文章
2025-11-25
发表了文章
2025-11-20
发表了文章
2025-11-12
发表了文章
2025-11-03
发表了文章
2025-10-30
发表了文章
2025-10-20
发表了文章
2025-10-11
发表了文章
2025-09-23
发表了文章
2025-09-05
发表了文章
2025-08-20
发表了文章
2025-08-14
发表了文章
2025-08-12
发表了文章
2025-08-07
发表了文章
2025-08-05
发表了文章
2025-07-31
发表了文章
2025-07-17
发表了文章
2025-07-15
发表了文章
2025-07-11
发表了文章
2025-06-25
发表了文章
2025-06-19