23.查询增强
首先,创建一个名为employees
的表,包含所需的字段:
CREATE TABLE employees (id INT PRIMARY KEY,name VARCHAR(50),hire_date DATE,email VARCHAR(100)
);-- 插入示例数据
INSERT INTO employees (id, name, hire_date, email)
VALUES(1, '张三', '2023-01-15', 'zhangsan@example.com'),(2, '李四', '2023-02-20', 'lisi@example.com'),(3, '王五', '2023-03-10', NULL),(4, '赵六', '2023-01-25', 'zhaoliu@example.com'),(5, '钱七', '2023-02-05', NULL);
1.日期类型字段的比较示例
-- 查询2023年2月1日之后入职的员工
SELECT *
FROM employees
WHERE hire_date > '2023-02-01';-- 查询2023年1月入职的员工
SELECT *
FROM employees
WHERE hire_date BETWEEN '2023-01-01' AND '2023-01-31';
-- 查询2023年2月1日之后入职的员工
-- 查询2023年1月入职的员工
也就是说日期类型的字段是可以进行比较的。
2.LIKE通配符的使用示例
-- 查询姓氏为"张"的员工
SELECT *
FROM employees
WHERE name LIKE '张%';-- 查询邮箱包含"example"的员工
SELECT *
FROM employees
WHERE email LIKE '%example%';-- 查询名字第二个字是"四"的员工
SELECT *
FROM employees
WHERE name LIKE '_四%';
-- 查询姓氏为"张"的员工
-- 查询邮箱包含"example"的员工
-- 查询名字第二个字是"四"的员工
3.空值判断示例
-- 查询没有邮箱的员工
SELECT *
FROM employees
WHERE email IS NULL;-- 查询有邮箱的员工
SELECT *
FROM employees
WHERE email IS NOT NULL;
-- 查询没有邮箱的员工
-- 查询有邮箱的员工
以上SQL代码展示了如何在数据库中进行日期比较、使用LIKE通配符进行模糊查询以及判断字段是否为空。
4.总结
总的来说,在进行查表时想要更强的查找效果,可以使用以上的方式在where语句中进行增添内容后查询,日期类型可比较,like模糊查询的通配符“_”代表一个字符,“%”代表0个或者多个字符,片段是否为空要用is null。