0

我正在尝试写这样的东西:

SELECT COUNT(*)
FROM
    SELECT TOP 3 (*)
    FROM TA
    WHERE TA.X = 'derp'

基本上我想在计算之前对我的查询设置一个上限,所以我需要将它插入到 FROM 中,但我似乎无法获得正确的语法;将不胜感激任何帮助。

谢谢

4

2 回答 2

1

你的问题非常令人困惑。但是假设您要询问如何构造子查询,那么您需要在查询周围使用括号并为结果设置别名:

SELECT COUNT(*)
FROM
   (
    SELECT TOP 3 *
    FROM TA
    WHERE TA.X = 'derp'
   ) TableAlias
于 2013-03-14T13:00:53.543 回答
1

Sql 服务器:

SELECT COUNT(*)
FROM (SELECT TOP 3 *
      FROM TA
      WHERE TA.X = 'derp') as t

mysql

SELECT count(*)
FROM (SELECT NULL 
      FROM TA
      WHERE TA.X = 'derp'
      LIMIT 3) as t
于 2013-03-14T13:01:03.313 回答