SQL子查询是嵌套在主查询中的查询,用于提供派生列、派生表或过滤数据。本文介绍了子查询的执行顺序、非相关与相关子查询的类型,并通过示例展示了子查询在SELECT、FROM、WHERE子句中的应用,包括使用IN、ANY、ALL、比较运算符和EXISTS等操作符,帮助读者理解并掌握子查询的使用方法。
本文介绍了Databricks的AI Functions,可在纯SQL中运行六种AI用例,包括解析文档、分类、翻译、提取和生成。这些功能直接在数据仓库内处理非结构化数据,无需移动数据或额外管道,简化流程并增强治理。通过SQL查询即可实现情感分析、票据分类、销售提取等,提升效率并降低成本。
sqlfmt 是一款受 gofmt 启发的 SQL 格式化工具,采用单一风格,无配置选项。其核心是“河流对齐”,将 select、where 等关键字右对齐,并支持小写关键字、尾逗号等规则。工具基于分词器而非 AST,能处理注释和部分语法,提供 CLI、Web 演示及编辑器集成,适合独立 SQL 文件维护。
PostgreSQL 19将引入SQL属性图查询(SQL/PGQ),支持图模式匹配,新增GRAPH_TABLE函数、属性图DDL命令及系统目录。作者虽承认其重要性,但认为语法复杂,优势不明显,更倾向传统JOIN写法,并推荐相关博客供深入理解。
Databricks推出Genie Code智能体转换器,可将T-SQL、Snowflake等专有方言自动转换为开放ANSI SQL,简化数据仓库迁移。用户通过迁移项目集中管理文件,系统评估复杂度并生成血缘关系,支持并行转换和自定义规则修复。该工具已帮助千余客户迁移至Lakehouse,未来将扩展ETL源和增加数据验证功能。
Databricks推出Genie Code转换器,可将T-SQL、Snowflake等专有SQL方言转换为开放ANSI SQL,简化数据仓库迁移。该工具支持创建迁移项目、分析代码复杂度、生成血缘关系,并并行转换文件。转换失败时,用户可手动修复或创建自定义规则自动应用。已帮助超千名客户,未来将扩展至更多ETL源和数据迁移验证。
PostgreSQL 11至18版本每年发布,SQL功能持续增强。文章精选了窗口函数GROUPS模式、FETCH WITH TIES、递归CTE的SEARCH/CYCLE、uuidv7、多范围类型、JSON路径语言、生成列、MERGE语句等关键改进,并提及增量备份等运维特性。这些功能解决了实际SQL编写问题,推动PostgreSQL成为最受欢迎的数据库。
pgvector v0.8.0将HNSW索引作为PostgreSQL索引访问方法实现,向量以varlena存储于8KB页中,与业务表共享WAL、缓冲区和VACUUM。相比Milvus,它支持同进程事务和SQL,但受限于页装箱、默认后过滤和资源争用。选型应基于隔离需求与生命周期管理,而非单纯比较ANN算法性能。
CrateDB 6.4.1发布,作为分布式SQL数据库的修复版本,主要面向机器数据、日志和指标查询。文章强调小版本更新需关注升级边界和故障恢复,建议小团队先测试再采用,避免核心交易数据迁移,并规划数据流、备份和监控,理性评估新数据库。
DoltHub has recently released Dolt 2.0, a major update to the open source version-controlled SQL database. The latest major version adds automatic storage optimization, including garbage...
本文介绍了OLAP数据库开发中SQL解析器的构建(第8阶段)。解析器通过词法分析器将SQL字符串拆分为标记,再用递归下降解析器生成抽象语法树(AST),支持SELECT、CREATE TABLE、INSERT和COPY语句。文章详细说明了标记类型、AST节点结构、运算符优先级处理及解析示例,为后续查询规划和优化做准备。
SQLite的SQL编译管线分为Tokenizer、Parser、名字解析和代码生成四段,其中查询规划与代码生成无独立边界。schema cookie变化时,sqlite3_step会根据语句是否由prepare_v2创建自动重编译或返回SQLITE_SCHEMA。实测显示INT与INTEGER PRIMARY KEY对同一查询产生不同访问路径,规划算法采用NN/N3启发式,不保证全局最优。
本文讨论了TiDB中SQL处理的关键步骤,重点介绍了如何将SQL请求路由到具体的Region。TiDB通过distsql模块将逻辑key范围映射到物理Region,并生成Coprocessor任务。文章还探讨了Region路由中的错误处理机制和重试策略,以及不同下推协议(Cop、BatchCop、MPP)的路由差异。最后,强调了优化器选择与路由层之间的独立性,以及点查与范围扫描的效率差异。
文章介绍了Jimmy Angelakos在LinkedIn Live上进行的关于修复PostgreSQL中错误SQL的直播课程。课程基于其书籍《PostgreSQL Mistakes and How to Avoid Them》的第二章,重点讲解常见的SQL反模式及其导致的错误结果和性能问题,并通过实际示例展示如何识别和修复这些问题,以提高查询的安全性和效率。
This post is about what PostgreSQL actually does when you write GRAPH_TABLE syntax. It turns out the database rewrites your graph query into ordinary joins against the underlying tables, then...
SQL是数据分析师和科学家的重要技能,学习SQL语法只是第一步。文章介绍了五个SQL项目,包括电商客户流失分析、数据仓库构建、销售数据分析、银行客户细分和医疗数据分析。这些项目有助于提升SQL技能,展示数据清洗、趋势探索和商业洞察能力,适合构建数据作品集。
本文比较了SQL、Pandas和Claude代理在数据分析中的表现。通过三道不同难度的问题,评估了它们在速度、准确性和可解释性方面的差异。结果显示,SQL执行速度最快,Pandas适合自定义转换,而Claude在完整模式下能生成正确SQL,但存在延迟和输出不一致的风险。总体而言,SQL适合结构化检索,Pandas适合逐步处理,Claude适合初步查询和探索。
本文探讨了Trino SQL查询的处理流程,包括词法分析、语法分析、语义分析和逻辑计划生成。逻辑计划以代数树形式描述关系变换,未绑定具体实现。分析器负责解析名称、类型和权限,并与元数据目录交互。文中还对比了Trino与PostgreSQL的处理步骤,并通过DuckDB的实测结果展示了逻辑计划与物理计划的区别,强调了SQL前端将字符串转化为带类型的逻辑计划的重要性。
本文比较了Trino与Spark SQL在数据处理中的差异,分析了两者的查询执行路径、优化机制及Iceberg连接器的能力。Trino采用解释型操作,而Spark通过全阶段代码生成和自适应查询执行来提升性能。文章还对比了两者在Iceberg下推能力,强调了各自的适用场景和优化风格。
2026年6月,ISO/IEC JTC1 SC32 WG3会议在斯德哥尔摩讨论并接受了多个SQL标准的新特性,包括QUALIFY子句、INSERT BY NAME选项、SELECT列表EXCLUDE和JOIN TO ONE语法。这些改进旨在提升SQL的可用性和安全性。计划在2027年发布新版本SQL标准,并对关键连接提案进行进一步审查。
完成下面两步后,将自动完成登录并继续当前操作。