标签: derived-table

错误代码:1248.每个派生表必须有自己的别名找不到查询解决方案

我在MySQL中使用此查询时出错.

查询逻辑是正确的,我已经在Oracle中尝试了它并且运行正常,但是在MySQL中运行时遇到错误.

我查看了之前关于StackOverflow的问题,但没有找到帮助我的东西.

这是查询:

select * from
  (select PM.ID, PM.Name, PM.TIMEOUT, PMS.PROCESS_MONITOR_ID, PMS.PROCESS_START_DATE
    from RATOR_IMP.PROCESS_MONITOR as PM
    JOIN RATOR_IMP.PROCESS_MONITOR_STATISTIC as PMS
    ON PM.ID = PMS.PROCESS_MONITOR_ID
    WHERE PM.ENABLED=1 and (PM.NAME='SDRRATINGENGINE11' or PM.NAME='WORKFLOWENGINE1')
    order by PMS.PROCESS_START_DATE desc)
limit 10000;
Run Code Online (Sandbox Code Playgroud)

这是错误:

Error Code: 1248. Every derived table must have its own alias 
No soultion found for query
Run Code Online (Sandbox Code Playgroud)

mysql sql alias derived-table

6
推荐指数
1
解决办法
3万
查看次数

什么时候不适合使用派生表?

SO帖子详细介绍了Derived与临时表的性能优势.

除了性能之外,还存在哪些Derived表不适合的情况.

每个帖子的一个答案都是有用的.

sql derived-table

5
推荐指数
1
解决办法
683
查看次数

Laravel 5,join子句中的派生表?

我有这个问题:

SELECT * FROM blog
LEFT JOIN (
    SELECT blog_id, AVG(value) as blog_rating FROM blog_ratings
    GROUP BY (blog_id)
) T ON T.blog_id = blog.id;
Run Code Online (Sandbox Code Playgroud)

我不知道如何用Eloquent写这个.

例如:

Blog::select("*")->leftJoin( /* Here goes derived table */ )->get()
Run Code Online (Sandbox Code Playgroud)

我该如何做到这一点?

derived-table left-join query-builder laravel-5

5
推荐指数
1
解决办法
1540
查看次数

SQL语句中不熟悉的字符

我认为这是一种SQL新手问题,但这里有.

我有一个基于示例用户定义函数放在一起的SQL查询(SQL Server 2005):

SELECT 
    CASEID,
    GetNoteText(CASEID)
FROM 
( 
    SELECT 
        CASEID 
    FROM 
        ATTACHMENTS 
    GROUP BY 
        CASEID 
) i
GO 
Run Code Online (Sandbox Code Playgroud)

UDF工作得很好(它连接相关表中多行的数据,如果这很重要)但我对FROM子句后的"i"感到困惑.查询在i中工作正常,但没有它就失败了."我"有什么意义?

编辑:正如乔尔在下面提到的,它不是一个关键词

sql t-sql sql-server derived-table

3
推荐指数
2
解决办法
619
查看次数

SQLite3 数据库中的派生字段

各位晚上好,

今天想问一个关于SQLite3中的派生字段(也称为计算字段)的问题。

利用存储在我的数据库中的两个值“重量”和“距离”,我知道可以利用它们来执行计算,以利用需要这两个值的公式返回我想要的值。

但是我想知道是否有一种方法可以通过 SQLite 编码设置一个字段来自动生成自己的值,因此一旦他们输入了重量和距离并执行了计算,“卡路里燃烧”的属性字段就会被显示人口稠密。

另外,我在几个网站上读到,由于 3NF 要求,3NF 数据库的派生字段不应存储在数据库中,如果是这样,当我希望检索该值时,我将不得不继续执行选择计算。

谢谢

JHB92

database sqlite normalization formula derived-table

3
推荐指数
1
解决办法
2288
查看次数

Access中的SQL帮助 - 寻找数据的缺失

我试图找到最快的方法来查找父表中没有子表中的某些记录的所有记录.例如,我希望查询返回所有没有男孩或根本没有孩子的家庭记录.

例1

这很痛苦:

SELECT*FROM Families
WHERE Families.FamilyID NOT IN(选择FamilyID FROM Children WHERE Children.Gender ="m")

例2

这更快:

SELECT*FROM Families
WHERE NOT EXISTS(SELECT*FROM Children WHERE Children.Gender ="m"AND Children.FamilyID = Families.FamilyID)

例3

这是最快的,但我担心投资它,因为我找不到任何文件.我甚至不知道它叫什么.由于缺少更好的术语,我们一直称之为"匿名查询".

SELECT*FROM Families
LEFT JOIN
[SELECT*FROM Children WHERE Gender ="m"].AS AliasChildren ON Families.FamilyID = AliasChildren.FamilyID
WHERE AliasChildren.FamilyID IS NULL

所以我的问题是:

  1. 这个例子在例3中被称为什么?
  2. 它是未来支持的Access的"主流"功能吗?
  3. 我在哪里可以找到它的文档(一旦我知道它的名称,这可能会更容易)?

谢谢!

sql ms-access derived-table

2
推荐指数
1
解决办法
515
查看次数

使用带有ISNUMERIC的派生表进行查询会导致转换失败(varchar为int)

这是一个示例查询:

DECLARE @table table (loc varchar(10))

INSERT INTO @table VALUES
('134a'), ('123'), ('abc'), ('124')

SELECT * 
FROM (
    SELECT * FROM @table WHERE ISNUMERIC(loc) = 1
) as a
WHERE CAST(loc as INT) BETWEEN 100 AND 200
Run Code Online (Sandbox Code Playgroud)

如果我有一些varchar值,并且我ISNUMERIC在查询中的派生表中使用它们将它们限制为数值,为什么会导致转换错误?:

将varchar值'134a'转换为数据类型int时转换失败.

有没有解决的办法?

t-sql derived-table isnumeric sql-server-2008

2
推荐指数
1
解决办法
716
查看次数

如何在mysql函数中使用别名

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

select 
   count(date_format(start_date, '%W')) AS "NUMBER OF DAYS",
   repeat('*', "NUMBER OF DAYS") 
from    ABC
Run Code Online (Sandbox Code Playgroud)

我尝试使用双引号、单引号以及反引号(`),但出现错误“字段列表中的未知列“天数””

mysql alias derived-table

2
推荐指数
1
解决办法
2777
查看次数

内联接派生表

我对加入派生表的基本语法有疑问.

这是使用的基本语法:

select *
from table1 a

inner join (select * from table2) as T1

on 1.ID = T1.ID
Run Code Online (Sandbox Code Playgroud)

那会有用吗?

sql inner-join derived-table

2
推荐指数
1
解决办法
7060
查看次数

如何使用postgresql查询找出员工的第二高薪

创建表名作为geosalary与列名name,id,salary;

name   id  salary  
patrik  2  1000  
frank   2  2000  
chinmon 3  1300  
paddy  3   1700  
Run Code Online (Sandbox Code Playgroud)

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

SELECT salary FROM (SELECT salary ,DENSE_RANK() OVER(ORDER BY SALARY) AS DENSE_RANK FROM geosalary) WHERE DENSE_RANK=2;
Run Code Online (Sandbox Code Playgroud)

但是得到以下错误消息,

*** 错误 ***

ERROR: subquery in FROM must have an alias  
SQL state: 42601  
Hint: For example, FROM (SELECT ...) [AS] foo.  
Character: 24  
Run Code Online (Sandbox Code Playgroud)

请告诉我,如果我的代码有任何问题

sql postgresql derived-table

0
推荐指数
2
解决办法
3万
查看次数

如何计算 SQL 中派生表的出现次数?

我有这个非常简单的表:

CREATE TABLE MyTable 
( 
    Id INT(6) PRIMARY KEY,
    Name VARCHAR(200) /* NOT UNIQUE */
); 
Run Code Online (Sandbox Code Playgroud)

如果我想要最常见的名称和相应的计数,我既不能这样做

SELECT Name, total
FROM table2
WHERE total = (SELECT MAX(total) FROM (SELECT Name, COUNT(*) AS total
                                       FROM MyTable GROUP BY Name) table2);
Run Code Online (Sandbox Code Playgroud)

也不是这个

SELECT Name, total
FROM (SELECT Name, COUNT(*) AS total FROM MyTable GROUP BY Name) table1
WHERE total = (SELECT MAX(total) FROM table1);
Run Code Online (Sandbox Code Playgroud)

另外,(假设最大计数为 4)在第二个命题中,如果我将第三行替换为

WHERE total = 4;
Run Code Online (Sandbox Code Playgroud)

有用。
为什么会这样?

多谢

mysql derived-table

0
推荐指数
1
解决办法
71
查看次数