第09节 复杂查询条件
逻辑运算符 AND、OR、NOT 可以构造复杂查询条件;AND 和 OR 使用短路运算;比较运算符(=、>、<等)的优先级比逻辑运算符高;NOT 比 AND 优先级高,AND 比 OR 优先级高,括号可以改变优先级。
第08节 空值的判断
空值使用NULL表示,代表了未知或者缺失的数据;SQL使用 IS [NOT] NULL 运算符判断是否为空值;PostgreSQL还支持ISNULL和NOTNULL运算符;IS [NOT] DISTINCT FROM运算符支持空值的比较。
推荐几个免费的SQL练习环境
几个在线的免费 SQL 运行环境,也就是在线数据库。这些网站可以帮助我们快速运行一些 SQL 语句的测试或者验证,同时还可以在网络上进行分享,关键不需要自己安装数据库。
第07节 字符串的模糊匹配
PostgreSQL中的LIKE运算符可以实现字符串的模糊匹配;百分号(%)匹配任意多个字符,下划线(_)匹配一个任意字符;ESCAPE选项用于指定转义字符;NOT LIKE执行LIKE相反的匹配,ILIKE不区分大小写。
《MySQL 入门教程》第 35 篇 PHP 访问 MySQL
本篇介绍如何利用 PHP 数据对象(PDO)接口连接 MySQL 数据库,创建和删除表、执行数据的增删改查操作、事务的管理以及调用存储过程和函数。
《MySQL 入门教程》第 34 篇 计划任务
MySQL 支持定时执行的计划任务,类似于 Unix crontab 或者 Windows 定时任务,被称为事件或者计划事件。事件是一个存储在数据库服务器中的 SQL 程序,在指定的时间范围内定期执行,调度和执行事件的服务被称为事件调度器。
《MySQL 入门教程》第 33 篇 触发器
MySQL 触发器(trigger)是一种存储程序,它和一个指定的表相关联,当该表中的数据发生变化时自动执行。MySQL 支持行级 INSERT、UPDATE 和 DELETE 触发器,可以在触发事件之前或者之后执行。
第06节 利用查询条件过滤数据
PostgreSQL使用WHERE子句过滤表中的数据;PostgreSQL提供了以下比较运算符:=、!=、<>、>、>=、<、<=、BETWEEN、IN等。
第05节 简单查询语句
SQL使用SELECT和FROM查询表中的数据,*表示查询全部字段;PostgreSQL提供了无表查询的扩展,使用AS指定别名;使用DISTINCT去除查询结果中的重复值;PostgreSQL支持两种格式的代码注释。
第04节 使用pgAdmin初始化示例表
pgAdmin是PostgreSQL官方提供的管理和开发工具,我们使用它连接数据库并执行一些常见的操作,创建示例数据库和示例表,初始化示例数据。
第03节 PostgreSQL安装
一步步完成Windows平台上的PostgreSQL安装。
第02节 PostgreSQL课程安排
PostgreSQL开发课程安排。
第01节 PostgreSQL简介
PostgreSQL是最先进的开源对象-关系型数据库,它采用友好的开源协议,高度兼容SQL标准,完全遵循事务的ACID原则,拥有丰富的功能特性和高度可扩展性。
SQL案例分析-MySQL UPDATE语句的非标准实现
对于MySQL而言,如果UPDATE语句在表达式中使用了前面被更新的字段,将会使用该字段被更新后的值而不是原来的值。
SQL案例分析-字符集不一致导致索引失效
MySQL字符集不一致导致的索引失效案例分析。
SQLite 3.39.0 发布,支持右外连接和全外连接
SQLite 开发团队于 2022 年 06 月 25 日发布了 SQLite 3.39.0 版本。该版本最大的更新就是支持 RIGHT OUTER JOIN 和 FULL OUTER JOIN,本文给大家逐一进行分析。
SQL面试题:字符类型字段怎么创建索引?
前缀索引只针对字符串的前面一部分字符创建索引,可以节约存储空间,同时不会对查询性能产生明显的影响。不过,前缀索引无法利用覆盖索引优化技术,无法实现唯一性。
SQL面试题:什么是死锁?
当两个事务互相之间需要等待对方释放资源时,如果系统不进行干预则会一直等待下去,也就是进入了死锁(deadlock)状态。死锁的4个必要条件包括:互斥条件,请求与保持条件,不剥夺条件,环路等待条件。
SQL面试题:什么情况下索引会失效?
可能导致SQL查询无法使用索引的原因包括:对索引字段进行了运算或者使用了函数;查询中的数据类型和字段类型不一致;违反了索引的最左匹配原则;全表扫描更快等。
SQL面试题:为什么不要用SELECT查询数据?
SELECT *在实际应用中可能产生一下问题:数据库读取更多数据;网络传输负载加重;失去覆盖索引优化的可能;表结构变动带来不确定性。