我正在尝试写这样的东西:
SELECT COUNT(*)
FROM
SELECT TOP 3 (*)
FROM TA
WHERE TA.X = 'derp'
基本上我在计算之前想要查询的上限,所以我需要将它插入到FROM中,但我似乎无法使语法正确;非常感谢任何帮助。
由于
答案 0 :(得分:1)
你的问题很混乱。但假设您正在询问如何构造子查询,那么您需要在查询周围使用括号并为结果添加别名:
SELECT COUNT(*)
FROM
(
SELECT TOP 3 *
FROM TA
WHERE TA.X = 'derp'
) TableAlias
答案 1 :(得分:1)
Sql server:
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