Navicat 博客

SQL 半连接 2024 年 10 月 15 日,由 Robert Gravelle 撰写

大多数数据库开发人员和管理员都熟悉标准的内、外、左和右连接类型。虽然可以使用 ANSI SQL 编写这些连接类型,但还有一些连接类型是基于关系代数运算符的,在 SQL 中没有语法表示。今天我们将学习一种这样的连接类型:半连接(Semi Join)。下周我们将讨论与之类似的反连接。为了更好地了解这些连接类型是如何工作的,我们将在 Navicat Premium Lite 17 中对 PostgreSQL dvdrental 数据库 执行一些 SELECT 查询。这是一个基于 MySQL Sakila 样本数据库的免费数据库。

使用 Having 子句筛选聚合字段 2024 年 10 月 8 日,由 Robert Gravelle 撰写

如果你编写 SQL 查询已有一段时间,那么你可能对 WHERE 子句非常熟悉。虽然它对聚合字段没有影响,但有一种方法可以根据聚合值过滤记录,那就是使用 HAVING 子句。本博客将介绍它的工作原理,并提供几个在 SELECT 查询中使用它的示例。

使用 EXISTS 编写 SELECT 查询 2024 年 9 月 26 日,由 Robert Gravelle 撰写

基于 SQL 中的 EXISTS 运算符为我们提供了一种基于其他数据是否存在(或不存在)来检索数据的简便方法。更具体地说,它是一个逻辑运算符,用于评估子查询的结果,并返回一个布尔值,该值指示是否返回了行。尽管 IN 运算符可用于类似的目的,但需要注意它们之间的一些差异。今天的博客将介绍如何使用 EXISTS 运算符的几个示例,并提供一些指导,说明何时应使用 EXISTS 而不是 IN。

了解通用 SQL 语法 2024 年 9 月 12 日,由 Robert Gravelle 撰写

上世纪 90 年代中期,Sun Microsystems 公司推出了一种“一次编写,[随处]运行”的编程语言。这种语言就是 Java。尽管时至今日它仍然是最受欢迎的编程语言之一,但其口号却显得有些过于乐观。Java 语言的发展历程与 SQL 有着诸多相似之处。Java 也可以几乎不做修改或只稍作修改就能从一个数据库移植到另一个数据库,甚至跨操作系统运行。至少,这是我们的梦想。但在现实世界中,生产级代码为了在新环境中运行往往需要进行一些调整。本文将概述 SQL 语法在不同数据库供应商之间可能存在的差异的一些原因。

Navicat BI 中创建自定义字段:计算字段 2024 年 9 月 6 日,由 Robert Gravelle 撰写

在数据库设计和开发中,避免存储任何可以从其他字段计算或重建的数据是一种惯例。因此,在 Navicat BI 中构建图表时,你可能会缺少一些数据。但这不是问题,因为 Navicat BI 提供了专门用于此目的的计算字段。在今天的博客中,我们将使用“计算字段”来构建图表,该图标显示每个客户的平均租赁时间(即客户在归还电影前保留电影的时间长度)。与本系列的大多数文章一样,数据将从免费的 “dvdrental”样本数据库 中提取。

分享
文章归档