# 1. AT TIME ZONE 子句的双向语义,timestamptz 转 timestamp、timestamp 转 timestamptz? A timestamptz B time C timestamp ✓ 正确答案 D interval
# 2. MySQL DATETIME 与 TIMESTAMP 的存储差异,以及 32 位时间戳回绕问题对 TIMESTAMP 取值范围的影响? A 支持 1000 年到 9999 年 B 无任何范围限制 C 受 32 位时间戳限制,约到 2038 年 ✓ 正确答案 D 只支持 1970 年之后任意年份
# 3. TIMESTAMP WITH TIME ZONE(timestamptz)与 TIMESTAMP WITHOUT TIME ZONE(timestamp)的根本差异,是否存储时区? A timestamptz 存 UTC 时间点,timestamp 存字面值 ✓ 正确答案 B timestamptz 存储时区偏移,timestamp 不存 C 两者完全相同 D timestamp 存 UTC 时间点
# 4. 时间间隔 INTERVAL 的语法,INTERVAL '1 day'、INTERVAL '1 year 2 months'? A 一个时间点 B 无效语法 C 1 年加 2 个时刻 D 1 年 2 个月的时间间隔 ✓ 正确答案
# 5. 向 timestamptz 插入夏令时跳变中“不存在的时间”(如春季拨快后的 02:30)会发生什么?秋季拨慢产生的“歧义时间”(02:30 出现两次)如何被解释? A 直接报错 B 返回 02:30 不变 C 存为 NULL D 自动映射到实际存在的时刻(推后) ✓ 正确答案
# 6. timestamptz 列的范围查询为何不受会话 TimeZone 影响索引使用(内部以 UTC 存储比较)?但常量字面量的时区解释为何仍依赖 TimeZone 设置? A 字面量总是按 UTC 解释 B 查询结果完全取决于会话时区 C 索引无法用于 timestamptz D 列本身以 UTC 存储比较,不受会话时区影响 ✓ 正确答案
# 7. PostgreSQL 中 SET TIME ZONE 与 ALTER DATABASE SET TIMEZONE 的差异? A 数据库所有连接 B 永久全局 C 集群级 D 仅当前会话 ✓ 正确答案
# 8. 为什么 INTERVAL 的月与日加法不可交换(1 月 31 日先加 1 月再加 30 天,与先加 30 天再加 1 月结果不同)?PostgreSQL 如何处理月末溢出(如加 1 月到 1 月 31 日)? A 3 月 30 日 ✓ 正确答案 B 3 月 1 日 C 4 月 1 日 D 2 月 28 日
# 9. MySQL 中 CONVERT_TZ 函数? A 2020-01-01 12:00:00 B 2020-01-01 04:00:00 C 2020-01-01 20:00:00 ✓ 正确答案 D 识别失败
# 10. MySQL 中 ON UPDATE CURRENT_TIMESTAMP 的列属性? A 仅在插入时更新 B 行更新时自动把该列设为当前时间 ✓ 正确答案 C 与 DEFAULT 无关,只用于读取 D 只支持 DATETIME,不支持 TIMESTAMP
# 12. PostgreSQL 中 transaction_timestamp()、statement_timestamp() 的差异? A statement_timestamp() B transaction_timestamp() ✓ 正确答案 C clock_timestamp() D 都不等价
# 14. MySQL 中 utf8(utf8mb3)与 utf8mb4 的差异,utf8mb4 支持 4 字节(emoji)? A utf8mb4 ✓ 正确答案 B utf8(utf8mb3) C latin1 D ascii
# 15. PostgreSQL 中 COLLATE 子句的覆盖规则,列定义、表定义、查询? A 查询中的显式 COLLATE 优先级最高 ✓ 正确答案 B 数据库默认优先级最高 C 列定义无法覆盖表定义 D 三者互不覆盖
# 16. PostgreSQL 的 timestamptz 与 Java OffsetDateTime 映射? A LocalDateTime B OffsetDateTime ✓ 正确答案 C LocalDate D LocalTime
# 17. PostgreSQL 中 INITDB 时选择的 locale 与 ICU 的差异? A 系统 locale 跨平台一致 B 排序规则与 locale 无关 C 两者完全相同 D ICU 提供稳定且跨平台一致的排序规则 ✓ 正确答案
# 19. VARCHAR(n) 与 CHAR(n) 的存储差异,变长 vs 定长、尾随空格处理? A CHAR 变长,VARCHAR 定长 B CHAR 定长并填充空格,VARCHAR 变长 ✓ 正确答案 C 两者都不处理尾随空格 D VARCHAR 会填充空格
# 23. CHAR(10) 与 VARCHAR(10) 的存储差异? A 只存储实际字符长度 ✓ 正确答案 B 总是占用 10 字符空间 C 会填充空格到 10 D 与 CHAR(10) 存储完全相同
# 26. MySQL 中 utf8mb4_unicode_ci 与 utf8mb4_0900_ai_ci 的差异? A utf8mb4_0900_ai_ci ✓ 正确答案 B utf8mb4_unicode_ci C utf8mb4_general_ci D utf8mb4_bin
# 29. PostgreSQL 中 database、table、column 级 collation 的覆盖? A 查询中的显式 COLLATE 最高 ✓ 正确答案 B table 级高于 column 级 C database 级最高 D 三者平级
# 31. TEXT 与 VARCHAR 的性能差异? A PostgreSQL 中两者无差异 ✓ 正确答案 B 所有数据库两者都无差异 C PostgreSQL 中 TEXT 更慢 D VARCHAR 永远更快
# 34. 夏令时(DST)的处理,America/New_York 等 DST 时区在 2:30 AM 跳变? A 存储时间点会受影响 B 全年无跳变 C 春季有一个小时不存在 ✓ 正确答案 D 秋季无歧义
# 35. TIMESTAMP 字面量的语法? A TIMESTAMP '2020-01-01 12:00:00' B DATE '2020-01-01' C '2020-01-01 12:00:00+08'::timestamptz ✓ 正确答案 D TIME '12:00:00'
# 44. date_trunc('day', ts) 的用法? A 2020-06-15 14:30:00 B 2020-06-15 00:00:00 ✓ 正确答案 C 2020-06-01 00:00:00 D 2020-06-15 14:00:00