ansi-sql相关内容

Postgres下/上一行SQL查询

我在Postgres 9.1数据库中具有以下表结构,但是理想的解决方案应该是与数据库无关的: 表:users | id |用户名| | 1 |一个| | 2 |两个| | 3 |三| 表:项目 | id | userid |商品名|创建的| | 1 | 1 | a |时间戳记| | 2 | 1 | b |时间戳记| | 3 | 1 | c |时间戳记| ..
发布时间:2020-05-29 20:49:31 其他开发

SELECT *语句中的列顺序-保证吗?

我正在使用ORM(sqlalchemy)从PG数据库中获取数据。我想避免在手工制作的SQL语句中指定所有表列名称*。 到目前为止,我的假设是返回的列按DDL语句的顺序排列用于创建数据库表。到目前为止,这是可行的-但我想知道这是否只是运气,还是在(ANSI)SQL规范中专门解决了这个问题。 即ANSI SQL(因此可能是数据库)是否保证 SELECT * 语句中返回的列顺序? 我将 ..
发布时间:2020-05-29 20:14:34 其他开发

PIVOT语句是否有ANSI规范?

最近我问了一个问题对于SQL Server(2005+)和Oracle(11g +),回答了该问题 很明显,sql-server实现相当有限,Oracle实现产生奇怪的列名. 这些独立的解决方案还是基于某些ANSI标准的解决方案? 解决方案 它不在 ANSI-92 . 除草稿 SQL: 2003 .也没提到 注意:没有提及数据透视表和交叉表 ..
发布时间:2020-05-22 04:04:33 其他开发

使用配置表的动态SQL

我有一个表,其中包含需要创建的动态SQL视图的列表 SEEDING_TABLE ------------- KEYVALUE|VIEW_TO_BE_CREATED|FROMTABLE|NOOFCOLS 1|A|A1|3 2|B|B1|4 3|C|C1|5 另一个表,其中包含上述种子表的实际列名 ORDERCOLS_FORVIEW KEYVALUE|FROMTABLE|COLSAVA ..
发布时间:2020-05-22 03:33:35 数据库

从Oracle转换为ANSI外部联接

我必须用Oracle外连接表示法(+)将许多SQL查询重写为ANSI SQL.我读了一些有关Oracle语法的内容,但是有非常简单的示例.该查询应如何以ANSI表示法显示? SELECT * FROM realtion r1, relation r2 WHERE r1.relno=r2.relno(+) AND r.id(+)=10 或 SELECT * FROM Mail M, ..
发布时间:2020-05-22 03:21:45 数据库

CONNECT BY的标准替代品?

我正在尝试转换一些Oracle SQL查询以在理论上与任何SQL数据库一起使用.一些查询本质上是分层的,是使用CONNECT BY编写的. 是否有标准的SQL替代Oracle的START WITH ... CONNECT BY语法?还是我应该遵循一些建议的过程来转换分层查询? 解决方案 在Oracle 11gR2中,它们支持通用表表达式中的递归(大多数Oracle人将其称为子查询因子 ..
发布时间:2020-05-22 02:08:30 数据库

Oracle DECODE的标准SQL替代

是否存在与Oracle的DECODE函数等效的ANSI SQL? Oracle的解码功能是SQL中的IF-THEN-ELSE构造. 解决方案 CASE表达式是ANSI SQL方法,其中有两个变体,“简单"和“搜索": 1)简单的CASE表达式: CASE col WHEN 1 THEN 'One' WHEN 2 THEN 'Two' E ..
发布时间:2020-05-22 00:12:18 数据库

SQL Select符号||是什么意思是?

||在SQL中做什么? SELECT 'a' || ',' || 'b' AS letter 解决方案 ||表示字符串连接.不幸的是,字符串连接不能完全移植到所有SQL方言中: ansi sql:||(中缀运算符) mysql:concat(vararg函数). 警告:||表示“逻辑或"(这是可配置的,但是要感谢 @hvd 指出) > oracle:||(中缀运算符),con ..
发布时间:2020-05-14 20:47:11 数据库

MySQL-报价数字或没有?

例如-我从cli创建数据库和表并插入一些数据: CREATE DATABASE testdb CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'; USE testdb; CREATE TABLE test (id INT, str VARCHAR(100)) TYPE=innodb CHARACTER SET 'utf8' COLLATE 'utf ..
发布时间:2020-05-14 19:49:44 数据库

'LEFT JOIN'vs'LEFT OUTER JOIN'

我知道并没有什么区别,但是"LEFT JOIN"是ANSI形式,还是有任何RDBMS都将失败"LEFT JOIN"并要求"LEFT OUTER JOIN". [我在这里问是为了节省一些点击次数,填写表格等,以获得正确的ANSI标准!] 根据ANSI规范, 解决方案 [OUTER]是可选的(当然,您假设每个SQL产品都是ANSI兼容的.对于联接,它们可能是.. ..
发布时间:2020-04-30 09:29:52 其他开发

为什么我需要显式指定SQL中的所有列“GROUP BY”子句 - 为什么不是“GROUP BY *”?

这一直困扰着我 - 为什么SQL语句中的GROUP BY子句要求包含所有非聚合列?这些列应该默认包含 - 一种“GROUP BY *” - 因为我甚至无法运行查询,除非它们全部包含在内。每一列都必须是一个聚合或在“GROUP BY”中指定,但似乎任何未聚合的东西都应该自动分组。 也许它是ANSI-SQL标准,但即便如此,我也不明白为什么。有人可以帮我理解这个约定的必要吗? 解决方案 ..
发布时间:2018-05-30 13:36:43 其他开发

在滚动时间范围内统计唯一ID

我有一个简单的表格,里面有许多ID和日期。 ID日期 10R46 2014-11-23 10R46 2016-04-11 100R9 2016-12-21 10R91 2013-05-03 ... ... 我想制定一个查询计算日期的滚动时间段的唯一ID,例如十天。这意味着对于每个日期,它应该给我在该日期和10天之前的唯一ID的数目。结果应该看起来像这样。 ..
发布时间:2018-05-07 17:36:40 其他开发