问题标签 [derived-table]

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.

0 投票
3 回答
1236 浏览

sql - SQL - 派生表中的未知列

这是我的查询有问题的部分:

在执行时,它会抛出此错误:

#1054 - 'where 子句'中的未知列 'competitor_id'

看起来派生表“x”看不到父表的查询别名competitor_id。有什么方法可以创建某种全局别名,所有派生表都可以使用它?

我知道我可以competitor_id直接在 WHERE 子句中将查询用作子查询并完全避免使用别名,但我的实际查询要大得多,我需要competitor_id在更多子查询和派生表中使用,所以如果我会这样做效率会很低多次使用相同的子查询。

0 投票
1 回答
670 浏览

sql - 运行 SELECT 查询时出现 Jaspersoft 派生表错误

我目前正在SELECT在 Japsersoft 的 AWS BI 套件中创建域的派生表部分运行查询。但是,当我这样做时,我收到以下错误:

com.jaspersoft.commons.semantic.metaapi.MetaDataException:无法执行 JDBC 查询。

org.postgresql.util.PSQLException:错误:事务是只读的

有谁知道为什么会这样,如果是这样,我会指出正确的方向吗?

0 投票
1 回答
245 浏览

sql-server-2005 - How can I filter with a derived table in MS SQL Server?

SQL Server Management Studio 2005

I wrote a query that would allow the user to search on various categories such as Description, Country of Origin, Brand Name, and Grow Method. The user is able to input data for as many filters as they would like and the results returned would be based on what they inputted.

Below is a working version of this query; however this is how SSMS reformatted my original query that I wrote before. I need to try and figure out how I wrote it before so I can add two more columns to this filter:

From what I can remember all I did before was something similar to this below. I think I just kept adding statements in the WHERE clause one by one to see if they worked. I've tried this again but it didn't work. I'd appreciate any insight. Thank you.

0 投票
9 回答
31625 浏览

sql - 如何找出员工的第二高薪水?

创建了以geosalarynameid和命名的表salary

我尝试了下面的代码来找到第二高的薪水:

但是,收到此错误消息:

我的代码有什么问题?

0 投票
1 回答
39 浏览

mysql - 有没有办法从派生表中进行子选择?

我有一种情况,我正在构建一个派生的数据透视表,然后我希望能够根据各种标准对它进行子选择(实际上是制作一个数据透视表)。

所以......在伪它看起来像这样......

请注意,这是一个荒谬的简化示例来说明我所追求的......我根本不需要解决这个例子......我只需要了解 mySQL 中是否有一种概念方式来实现相同的结果。

问题是derivedTable外部选择中的子选择不可见。所以,我很好奇我如何才能达到相同的结果,或者我是否不得不编写子选择来单独考虑所有标准。

0 投票
1 回答
2502 浏览

sql - 如何在 Access 中将表别名与 Union 语句一起使用?

在非透视操作中,我想要以下内容:

但它抱怨DerivedTable找不到(我使用派生表,因此[complex joins/where clause]不必一次又一次地评估,从而减慢速度)。

我知道我可以简单地创建一个新的查询DerivedTable来表示[complex joins/where clause]但是

  • 上面的 SQL 是从 Excel 传递的——我宁愿在运行上面的语句之前不必打开数据库来创建新查询

  • 是动态生成的[complex joins/where clause],并且从一个用户到另一个用户变化,其中两个可能同时运行上面的SQL。

0 投票
2 回答
2146 浏览

mysql - 如何在mysql函数中使用别名

如何在数学函数中使用带空格的别名并按语句分组。如果我使用单个单词别名,我可以使用它,但是如果名称有空格,有什么方法可以实现它?

我尝试使用双引号、单引号和反引号(`),但它给出了一个错误,提示“字段列表中的未知列“天数””

0 投票
3 回答
17339 浏览

sql - SQL - 子查询和外部表之间的关系

问题

我需要更好地理解有关何时可以在子查询中引用外部表以及何时(以及为什么)这是不适当的请求的规则。我在尝试重构的 Oracle SQL 查询中发现了一个重复项,但是当我尝试将引用的表转换为分组子查询时遇到了问题。

以下语句适用:

不幸的是table2有时有重复的记录,所以我需要先聚合t2,然后再将它加入t1。但是,当我尝试将其包装在子查询中以完成此操作时,SQL 引擎突然无法识别外部表。

我知道这些是根本不同的查询,我要求编译器将它们放在一起,但我不明白为什么一个会起作用,而另一个不起作用。

我知道我可以在我的子查询中复制表引用并有效地将我的子查询与外部表分离,但这似乎是完成这项任务的一种非常丑陋的方式(代码和处理的所有重复)。

有用的参考资料

  • 我发现了对 SQL Server 中子句执行顺序的精彩描述:(INNER JOIN ON vs WHERE 子句)。我正在使用 Oracle,但我认为这将是全面的标准。子句评估有一个明确的顺序(首先是 FROM),所以我认为任何出现在列表后面的子句都可以访问之前处理的所有信息。我只能假设我的第二个查询以某种方式改变了排序,因此我的子查询被评估得太早了?

  • 此外,我发现了一个类似的问题(在子查询中引用外部查询的表 ),但是虽然输入很好,但他们从未真正解释过为什么他不能做他正在做的事情,而只是为他的问题提供了替代解决方案。我已经尝试过他们的替代解决方案,但这给我带来了其他问题。也就是说,带有日期引用的子查询是整个操作的基础,所以我无法摆脱它。

问题

  • 我想了解我在这里做了什么......为什么我的初始子查询可以看到外部表,但在我将整个语句包装在子查询中之后却看不到?

  • 也就是说,如果我想做的事情无法完成,那么重构第一个查询以消除重复的最佳方法是什么?我应该两次引用 table1 (所有需要的重复项)吗?还是(可能)有更好的方法来解决这个问题?

提前致谢!

- - - 编辑 - - -

正如一些人推测的那样,上面的这些查询并不是我正在重构的实际查询,而是我遇到的问题的一个例子。我正在处理的查询要复杂得多,所以我很犹豫在这里发布它,因为我担心它会让人们偏离正轨。

- - - 更新 - - -

所以我由一位开发人员运行了这个,他对为什么我的子查询失去对 t1 的访问权有一个可能的解释。因为我将此子查询包装在括号中,所以他认为在评估我的表 t1 之前正在评估此子查询。这肯定会解释我收到的 'ORA-00904: "t1"."id": invalid identifier' 错误。它还表明,就像运算的算术顺序一样,在语句中添加括号会在某些子句评估中赋予它优先级。如果他们同意/不同意这是对我在这里看到的情况的合乎逻辑的解释,我仍然希望专家参与进来。

0 投票
0 回答
195 浏览

mysql - 从派生表中选择会冻结 phpmyadmin

我有一个表 Doctor,它有 30 000 条记录。我想知道,为什么这个简单的 SQL 查询:

在 phpmyadmin 中执行至少需要 5 分钟(默认执行 5 分钟后被杀死,但是这种查询的 5 分钟也太长了)

但是,如果我使用City大约有 3000 条记录的数据库执行此操作,则加载大约需要 3 分钟,但 phpmyadmin 表示查询需要 0.001 秒。

我知道这些查询没有意义,它们可以被简化,但我需要从更复杂的派生表中进行选择,并发现即使是这个简单的查询也不起作用。

有任何想法吗?

谢谢

0 投票
2 回答
424 浏览

sql - 查询派生表时 SQL Server 中的强制转换异常

在尝试回答有关 Stack Overflow 的另一个 SQL Server 问题时,我遇到了一些无法按预期工作的问题。我使用的是 SQL Server 2008R2,但这可能并不重要。

我有一个简单的假设表,其中一些日期存储为 VARCHAR 数据类型。我知道使用 DATE 数据类型存储日期信息是显而易见且实用的,但此示例有意使用 VARCHAR 来演示我遇到的问题。日期无效的原因并不重要——可能是清理不当、更新查询格式错误、发挥您的想象力等。

我想选择 2013 年 7 月 1 日之前的假期数。我怀疑日期可能无效,所以我必须为此做好计划以避免异常。在我编写以下这些查询之前,我知道它们会失败:

此查询按预期工作,将是我的最终选择:

不过,在我编写最终查询之前,我先尝试了这个,我希望它能够工作,但它也会引发一个强制转换异常。为什么这个查询特别失败?