ansi-sql相关内容

具有 distinct 和 sum 的 SQL 查询

我有以下 medleys 表,它结合了 colors、fruits 和 ratings: [混合曲]medley_id |颜色 |水果| 高分辨率照片| CLIPARTO评分===============================================1个红苹果252蓝梨53 青苹果 124 红苹果 105紫猕猴桃56紫猕猴桃507 蓝色奇异果 38 蓝梨 9 我正在尝试编写一 ..
发布时间:2022-01-09 15:46:37 其他开发

标准 SQL 布尔运算符 IS 与等于 (=) 运算符

在 SQL 的维基百科页面上,有一些关于 SQL 中布尔逻辑的真值表.[1] 维基百科页面似乎来源于 SQL:2003 标准. 等于运算符 (=) 的真值表与 SQL:2003 草案中的 IS 运算符不同. 此外,维基百科文章指出“IS NULL"()是一种特殊情况. 在 SQL:2003 中似乎有一个“IS"操作符,它是一个像 AND、NOT 和 OR 这样的常规操作符.然而, ..
发布时间:2022-01-06 23:06:32 其他开发

ANSI SQL 手册

谁能推荐一本好的 ANSI SQL 参考手册? 我不一定指的是教程,而是当您需要基本或更深入的解释或示例时可以查找的适当参考文档. 目前我正在使用 W3Schools SQL 教程 和 SQL 教程 不错,但我觉得它们不够“深入". 当然,每个主要的 RDBMS 生产商都会有一些针对他们自己产品的参考手册,但它们往往有偏见,有时会使用专有扩展. 已编辑:问题的目的是关注数据 ..
发布时间:2022-01-05 11:45:51 其他开发

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

我有一个简单的表格,上面有很多 ID 和日期. ID 日期10R46 2014-11-2310R46 2016-04-11100R9 2016-12-2110R91 2013-05-03…… 我想制定一个查询来计算日期滚动时间范围内的唯一 ID,例如十天.这意味着对于每个日期,它应该给我该日期和 10 天前之间唯一 ID 的数量.结果应该是这样的. UniqueTenDays 日期200 2 ..
发布时间:2021-12-30 22:46:16 其他开发

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

我正在使用 ORM (sqlalchemy) 从 PG 数据库中获取数据.我想避免在我手工编写的 SQL 语句中指定所有表列名*. 到目前为止,我的假设是返回的列按照用于创建 db 表的 DDL 语句的顺序排列.到目前为止,这是有效的 - 但我想知道这是否只是运气,或者是否在 (ANSI) SQL 规范中专门解决了这个问题. 即ANSI SQL(也可能是数据库)是否保证 SELECT ..
发布时间:2021-12-30 14:54:04 其他开发

PIVOT 语句是否有 ANSI 规范?

最近我问了一个问题 如何使用 PIVOT 在其单元格中同时显示平均值和计数? 该问题已针对 SQL-Server (2005+) 和 Oracle (11g +) 回答 显然,sql-server 实现相当有限,Oracle 实现会产生奇怪的列名. 这些是独立的解决方案还是基于某些 ANSI 标准? 解决方案 它不在 ANSI-92. 除了SQL 草案外,后续版本不 ..
发布时间:2021-12-30 13:56:46 其他开发

为什么我需要在 SQL“GROUP BY"中显式指定所有列?条款 - 为什么不是“GROUP BY *"?

这一直困扰着我 - 为什么 SQL 语句中的 GROUP BY 子句要求我包含所有非聚合列?默认情况下应该包含这些列 - 一种“GROUP BY *" - 因为我什至无法运行查询,除非它们都被包含在内.每列都必须是聚合或在“GROUP BY"中指定,但似乎任何未聚合的内容都应自动分组. 也许它是 ANSI-SQL 标准的一部分,但即便如此,我也不明白为什么.有人能帮我理解这个约定的必要性吗? ..
发布时间:2021-12-27 08:01:46 其他开发

为什么 SQL ANSI-92 标准没有比 ANSI-89 更好地采用?

在我工作过的每家公司,我发现人们仍在按照 ANSI-89 标准编写 SQL 查询: 选择a.id、b.id、b.address_1来自 a 人,地址 b其中 a.id = b.id 而不是 ANSI-92 标准: 选择a.id、b.id、b.address_1从人a内连接地址 ba.id = b.id 对于像这样的极其简单的查询,可读性没有太大区别,但对于大型查询,我发现将我的连接条件分组 ..
发布时间:2021-12-01 19:53:41 其他开发

为什么 MySQL 允许“group by"?没有聚合函数的查询?

惊奇——这是一个在 MySQL 中完全有效的查询: select X, Y from someTable group by X 如果您在 Oracle 或 SQL Server 中尝试此查询,您会收到自然错误消息: 列“Y"在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句. 那么 MySQL 是如何确定每个 X 显示哪个 Y 的呢?它只是选择一个.据我所知,它只是选择它找 ..
发布时间:2021-11-20 21:35:02 数据库

如何查询文本以找到 SQL 中最长的前缀字符串?

我正在使用 sparq sql.假设这是我的大桌子的快照: ups 商店ups奥斯汀店芝加哥ups商店伯尔尼ups商店沃尔玛目标 如何在sql中找到上述数据的最长前缀?即: ups store沃尔玛目标 我已经有一个 Java 程序来执行此操作,但我有一个大文件,现在我的问题是这是否可以在 SQL 中合理地完成? 下面更复杂的场景怎么样?(我可以没有这个,但如果可能的话,我很高兴拥 ..
发布时间:2021-11-14 23:17:00 其他开发

为什么要警告 COUNT(col) 中的 NULL?

这有点哲学问题,我猜... 假设我在 SQL Server 中执行此查询: SELECT mygroup, COUNT(mycolumn)从 mytable按我的群组分组 计数列包含 NULL 并且 ANSI_WARNINGS 选项为 ON,所以我得到: 警告:空值被聚合或其他 SET 消除操作. 我明白这意味着什么.有很多方法可以“修复"这个警告.但是... 为什么它首先要 ..
发布时间:2021-09-22 18:38:28 数据库

在mysql中显示月份名称而不是月份编号

编写查询以显示月份名称和 2013 年每个月安排的事件数,按月份排序.为月份名称指定一个别名为 month_name,为计划的事件数指定一个别名为 number_of_events.月份名称必须显示为一月、二月...我尝试了以下查询,但没有执行: select convert(varchar(10),month,date) as month_name, count(*) as number_of ..
发布时间:2021-06-05 18:56:19 数据库

在 MySQL 中,我应该引用数字吗?

例如 - 我从 cli 创建数据库和一个表并插入一些数据: CREATE DATABASE testdb CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';使用测试数据库;CREATE TABLE test (id INT, str VARCHAR(100)) TYPE=innodb CHARACTER SET 'utf8' COLLATE 'utf8 ..
发布时间:2021-06-05 18:36:59 数据库

如何在Snowflake SELECT中对一组ARRAY_AGGS进行FLATTEN

我正在尝试对多个联接的VARIANT列表进行SELECT.主记录将以DATA的形式返回,并且围绕它的所有支持信息都将以INCLUDED的形式返回支持的连接表. 我在支持的VARIANT记录和ARRAY_AGG(DISTINCT [record])上使用ARRAY_CONSTRUCT_COMPACT对其进行汇总和重复数据删除. 问题是ARRAY_AGG在我的一个联接表(ENTITIES) ..
发布时间:2021-04-09 20:46:14 其他开发