pgsql语法不兼容和双向兼容sqlserver的地方
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
双向兼容:例子1:因为pgsql大小写敏感,统一用引号引上,sqlserver会自己变成小写sql SELECT "ID" FROM table 例子2:因为pgsql的数据类型比较少,通一转换之后比较sql SELECT * FROM dept WHERE CAST(label AS INTEGER) < 7 ORDER BY dept_all_code 不兼容:例子1:sql --pgsql sql
--sqlserver 1. 数据库年份获取方式PostgreSQL版本: sql newnotice.sendyear = CAST(EXTRACT(YEAR FROM CURRENT_TIMESTAMP) AS text)
SQL Server版本: sql newnotice.sendyear=year(getdate())
2. 检查首字符是否为数字的方法PostgreSQL版本: sql SUBSTRING(newnotice.notice_no FROM 1 FOR 1) ~ '[0-9]'
SQL Server版本: sql CHARINDEX(left(newnotice.notice_no,1),'0123456789')>0
3.数据库日期获取方式PostgreSQL版本: sql -- PostgreSQLWHERE create_date > now() - interval '1 day' SQL Server版本: sql -- SQL ServerWHERE create_date > GETDATE() - 1 总结:想实现双向兼容时(前提是先兼容了pgsql),pgsql语句只有NOW(),EXTRACT(YEAR FROM CURRENT_TIMESTAMP)有待补充....需要注意一下。 该文章在 2025/8/13 17:23:24 编辑过 |
关键字查询
相关文章
正在查询... |