问题标签 [ansi-sql]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - SQL语句根据最新日期选择最新版本数据的值
我有一个简单的查询,想知道它是否可以更优雅地编码。最终解决方案必须符合 ansi 标准。
我需要根据日期和版本从表中获取最新值。一个样本会更清楚地解释:
所以我希望输出是
它基于上述查询。
我对这个解决方案并不特别满意 - 有更好的方法来完成这个吗?
sql - Oracle DECODE 的标准 SQL 替代方案
是否有与 Oracle 的 DECODE 函数等效的 ANSI SQL?
Oracle 的解码函数是 SQL 中的 IF-THEN-ELSE 构造。
sql - 将过程代码展开到 SQL 中
将过程代码转换为 SQL 的行为最近引起了我的兴趣。我知道并不是所有的东西都可以用图灵完备的程序语言来表达。
但是,如果您有特殊用途的程序语言怎么办?例如转换这样的东西:
进入这个:
这样的东西有名字吗?
此外,在我的伪代码中假设它row
是不可变的,并且不可能做类似Table[0].FirstName...
和其他显然没有(简单)转换为 ANSI SQL 的事情。
谁能给我这个名字?
sql - 是否有在表末尾开始搜索的 SQL ANSI 方式?
在某个应用程序中,我必须不断查询可能在最后插入的行中的数据。由于该表将增长很多,我想知道是否有一种标准方法可以通过使查询在表的末尾开始查找来优化查询。我认为如果数据库以类似堆栈的结构存储表的数据,我会得到相同的优化,因此将首先搜索最后插入的行。
sql - 数据库引擎和 ANSI SQL 合规性
我已经搜索了半个小时,但找不到任何资源说明各种数据库引擎支持什么级别的 SQL ANSI 标准。
看起来大多数引擎都提供了某种程度的支持,但我想知道官方支持的确切级别。
我主要对 MySQL、PostgreSQL、SQL Server 和 Oracle 感兴趣。
编辑:PostgreSQL 有一个很好的合规页面,正是我在寻找其他引擎的内容:http ://www.postgresql.org/docs/current/interactive/features.html
sql - SQL 连接:SQL ANSI 标准的未来(where vs join)?
我们正在开发 ETL 作业,我们的顾问在加入表时一直在使用“旧式”SQL
而不是使用内部连接子句
我的问题是,从长远来看,使用旧的“where join”是否存在风险?这种连接作为 ANSI 标准受支持和保持多长时间?我们的平台是 SQL Server,我的主要原因是将来不再支持这些“连接”。发生这种情况时,我们必须使用“内连接”样式的连接来修改所有 ETL 作业。
sql - 用于虚拟显示数据的 SQL 复杂视图
我有一张带有下表的表格。
因此,这显示了在数量发生变化的某些小时内的库存。现在我的要求是在此表上创建一个视图,该视图将虚拟显示数据(如果特定小时内的库存不充足)。所以应该显示的数据是
这意味着即使某个特定小时的数据不存在,我们也应该显示最后一小时的库存。我有另一个表格,列中有从 1 到 23 的所有可用时间。
我已经尝试通过下面给出的方法进行分区。但我认为我在这方面缺少一些东西来完成我的要求。
对于没有数据的时间,此查询将所有带库存的时间设为空。我们正在研究 ANSI sql 解决方案,以便它可以用于 Teradata 等数据库。
我在想我错误地使用了分区,或者还有其他方法。我们尝试了 CASE WHEN ,但这需要某种循环来检查一个小时的库存。
sql - PIVOT 语句是否有 ANSI 规范?
最近我问了一个问题,如何使用 PIVOT 在其单元格中同时显示平均值和计数?
SQL-Server (2005+) 和 Oracle (11g +) 的问题得到解答
显然,sql-server 实现相当有限,Oracle 实现会产生奇怪的列名。
这些是独立的解决方案还是基于某些 ANSI 标准?
mysql - 是否可以为 MySQL 和 PostgreSQL 编写 SQL 脚本?
我想编写一个 SQL 脚本,它将在 MySQL 或 PostgreSQL(分别为 5.5 和 9.0 版)的默认安装上运行。这可能吗?
我几乎可以通过添加SET SESSION sql_mode='ANSI';
到脚本的开头并使用标准 ANSI 查询来做到这一点,但该行对 PostgreSQL 无效。我可以告诉 PostgreSQL 继续处理错误,但最好有一个运行无错误的脚本。
sql - 当使用左(外)连接时,连接中表的顺序是否重要?
我想确认 SQL 查询
完全等同于 FROM 子句中的其他排列,例如
或者
只要橙子和猕猴桃之间的显式 LEFT JOIN 保持不变。从我在各种文档中阅读的内容来看,返回的集合应该完全相同。
我真的只关心查询的结果,而不关心它在实际数据库中的性能。(我使用的是 PostgreSQL 8.3,AFAIK 不支持关于连接顺序的优化器提示,并将尝试自动创建最佳查询计划)。