mysql - 如何在 sub SELECT 中使用 WHERE?

标签 mysql sql

我正在尝试从 users 表中进行子选择。

但是我得到一个错误提示 您的 SQL 语法有误;查看与您的 MySQL 服务器版本相对应的手册,了解在第 7 行的 'AS n1 ) LIMIT 0, 25' 附近使用的正确语法

我不明白我在这里做错了什么

SELECT * FROM ( SELECT 
               n1.userid,
               n1.country,
               n1.gender
               FROM users 
               WHERE n1.country = 'US' 
               AND n1.gender = '1' AS n1 ) 

最佳答案

我想这就是你想要的:

SELECT *
FROM (SELECT n1.userid, n1.country,  n1.gender
      FROM users n1
      WHERE n1.country = 'US' AND n1.gender = '1' 
     ) n1;

as 不属于 WHERE 子句。如果要使用 n1 来限定列名,则需要将其作为子查询中的表别名。并且,您应该为外部查询提供一个表别名。

注意:显然不需要子查询,但我猜您确实需要它来解决您的实际问题。

关于mysql - 如何在 sub SELECT 中使用 WHERE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45372510/

相关文章:

mysql 查询排序数据库

php - 如何将答案存储到 MySQL 表

PHP session 随机数据

mysql创建多个表

php - 在文件系统与数据库中存储图像的问题

mysql - 按瑞典语字母顺序对文本进行排序

sql - ORACLE SQL 中的 MAX()

c# - Azure Application Insights Analytics 加入查询

mysql - 没有信息插入数据库中的表中

sql - 如何加入 SQL Server 中的别名列?