当前位置: 首页 > 面试题库 >

MySQL:FROM子句限制中的带有子查询的视图

岳意蕴
2023-03-14
问题内容

在MySQL 5.0中,为什么尝试在FROM子句中创建带有子查询的视图时会发生以下错误?

错误1349(HY000):视图的SELECT在FROM子句中包含一个子查询

如果这是MySQL引擎的限制,那么为什么他们还没有实现此功能呢?

此外,对于此限制有什么好的解决方法?

是否有任何变通方法可用于FROM子句中的任何子查询,或者是否存在某些无法在FROM子句中使用子查询无法表达的查询?

查询示例(已包含在注释中):

SELECT temp.UserName 
FROM (SELECT u1.name as UserName, COUNT(m1.UserFromId) as SentCount 
      FROM Message m1, User u1 
      WHERE u1.uid = m1.UserFromId 
      Group BY u1.name HAVING SentCount > 3 ) as temp

问题答案:

您的查询不能只写成:

SELECT u1.name as UserName from Message m1, User u1 
  WHERE u1.uid = m1.UserFromID GROUP BY u1.name HAVING count(m1.UserFromId)>3

这也应该有助于解决MySQL中子查询的已知速度问题



 类似资料:
  • 问题内容: 这可能是一个简单的…如何通过此查询实现我想要的结果: 因此,简而言之,我想删除所有最新的15条信息。 当我尝试该查询时,我得到了 MySQL尚不支持’LIMIT&IN / ALL / ANY / SOME子查询 编辑 错误:#1235-此版本的MySQL尚不支持“ LIMIT&IN / ALL / ANY / SOME子查询” 问题答案: 尝试这个:

  • 问题内容: 我们正在开发一个使用EJB连接到数据库的Web应用程序。 在我们的数据库模型中,我们有一个移动设备表,另一个有功能表,最后一个有手机模型映射功能值的表。模型(id_model,…)功能(id_feature,…)model_features(id_model,id_feature,值) 我们想要执行一个查询,以按匹配特征的数量对模型进行排序。就是说,我们传递了一个要匹配的功能列表(即从

  • 问题内容: 我最近才刚开始使用SQLAlchemy,但仍无法解决某些概念。 归结为基本元素,我有两个这样的表(通过Flask-SQLAlchemy): 我将如何查询用户列表及其最新帖子(不包括无帖子的用户)。如果我使用的是SQL,则可以执行以下操作: 因此,我确切地知道“期望的” SQL可以达到我想要的效果,但是不知道如何在SQLAlchemy中“正确地”表达它。 编辑:如果很重要,我使用的是SQ

  • 随后将更正的一致缺陷:如果将NULL值与使用ALL、ANY或SOME的子查询进行比较,而且子查询返回空结果,比较操作将对NULL的非标准结果进行评估,而不是TRUE或FALSE。 子查询的外部语句可以是SELECT、INSERT、UPDATE、DELETE、SET或DO中的任何一个。 仅部分支持行比较操作: ·对于expr IN (subquery),expr可以是n-tuple(通过行构造程序语

  • 问题内容: 我们正在将JPA与hibernate用作提供程序,我们有一个查询,该查询包含一个与FROM子句中的子查询的联接,但是会出现以下错误: org.hibernate.hql.ast.QuerySyntaxException:意外令牌:(在第1行第75列附近[SELECT sd from com.hp.amber.datamodel.entities.analysis.SnapshotDat

  • 问题内容: 谁能给我一些关于如何将这种子查询放入提示?(我正在使用 JPA 2.0 - Hibernate 4.x ) -第二个选择将始终获得单个结果或null。 问题答案: 尝试类似以下示例的操作来创建子查询: 请注意,由于附近缺少IDE,因此该代码尚未经过测试。