SQLite 运算符
                           
天天向上
发布: 2025-03-04 08:37:24

原创
900 人浏览过

SQLite 支持多种运算符,可以用于查询和数据操作。运算符可以分为以下几类:


1. 比较运算符

这些运算符用于在 SQL 查询中进行比较。

运算符描述示例
=等于WHERE age = 30
!=<>不等于WHERE age != 30WHERE age <> 30
>大于WHERE age > 30
<小于WHERE age < 30
>=大于等于WHERE age >= 30
<=小于等于WHERE age <= 30
BETWEEN范围检查,检查一个值是否在两个值之间(包含边界)WHERE age BETWEEN 20 AND 30
IN检查一个值是否存在于一组值中WHERE age IN (20, 30, 40)
LIKE模糊匹配字符串WHERE name LIKE 'A%'
IS NULL检查一个值是否为 NULLWHERE name IS NULL
IS NOT NULL检查一个值是否不是 NULLWHERE name IS NOT NULL

2. 逻辑运算符

这些运算符用于连接多个条件。

运算符描述示例
AND两个条件都为真时返回真WHERE age > 20 AND age < 30
OR任一条件为真时返回真WHERE age < 20 OR age > 30
NOT对条件取反WHERE NOT age = 30

3. 算术运算符

这些运算符用于对数值进行运算。

运算符描述示例
+加法SELECT price + tax FROM products
-减法SELECT price - discount FROM products
*乘法SELECT quantity * price FROM products
/除法SELECT total / quantity FROM orders
%取余SELECT price % 2 FROM products

4. 字符串运算符

这些运算符用于处理字符串。

运算符描述示例
||字符串连接SELECT first_name || ' ' || last_name FROM employees

5. 聚合函数

这些运算符与聚合函数一起使用,常用于查询汇总数据。

运算符描述示例
COUNT计算行数SELECT COUNT(*) FROM users
SUM计算总和SELECT SUM(price) FROM products
AVG计算平均值SELECT AVG(age) FROM users
MIN获取最小值SELECT MIN(age) FROM users
MAX获取最大值SELECT MAX(age) FROM users

6. 常见操作

1. ISNULL 操作符

ISNULL 用于替代 NULL 值,可以为 NULL 值提供默认值。

运算符描述示例
IFNULL(expression, default_value)如果表达式的值是 NULL,则返回 default_valueSELECT IFNULL(age, 0) FROM users

7. 示例

1. 使用比较运算符

查询年龄大于 25 的用户:

SELECT * FROM users WHERE age > 25;

2. 使用逻辑运算符

查询年龄在 20 到 30 岁之间,且姓名以 A 开头的用户:

SELECT * FROM users WHERE age BETWEEN 20 AND 30 AND name LIKE 'A%';

3. 使用算术运算符

计算所有产品的价格加上税后的总金额:

SELECT price + tax FROM products;

4. 使用字符串运算符

将姓和名拼接成全名:

SELECT first_name || ' ' || last_name FROM employees;

5. 使用聚合函数

查询 users 表中所有用户的平均年龄:

SELECT AVG(age) FROM users;

总结

  • 比较运算符:用于比较数据(如 =, >, IN 等)。
  • 逻辑运算符:用于连接多个条件(如 AND, OR, NOT)。
  • 算术运算符:用于数学运算(如 +, -, *)。
  • 字符串运算符:用于处理字符串(如 || 拼接)。
  • 聚合函数:用于计算总和、平均值等(如 COUNT, SUM, AVG)。
  • 常用函数:如 IFNULL 用于替换 NULL 值。

更多详细内容请关注其他相关文章。

发表回复 0

Your email address will not be published. Required fields are marked *