select max(ProductID) from (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductNumber ASC) 的错误怎么改? --- 消息 102,级别 15,状态 1,第 1 行 ')' 附近有语法错误。 ---
select max(ProductID) from (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductNumber ASC) t
ORDER BY ProductNumber 不能在子查询中,要放只能放最后面
SELECT TOP 10 ProductNumber,ProductName,KindNumber,Unit,Creater FROM basicdata_product WHERE ProductID>(SELECT max(ProductID) FROM (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductNumber ASC) AS TabTemp) ORDER BY ProductNumber ASC 我是从这语句上截的一句,想看看效果,结果出错,为什么他的对呢?
这句可以这么用.如IN,not in ,exists等可以不要别名.但你的这个查询需要别名.
select max(ProductID) from (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductNumber ASC) A
这一句截得不够完整。。 表别名被你截漏了。ps:好久不见LZ了,哈哈
看LZ的句子,好像是给表basicdata_product分页的。 但恐怕得不到正确的结果,除非表按productID和ProductNumber排序的结果完全一致。 建议都按ProductID来排序:(如果productNumber建有适当索引,则可以把productID全部换成ProductNumber) SELECT TOP 10 ProductNumber,ProductName,KindNumber,Unit,Creater FROM basicdata_product WHERE ProductID> ( SELECT max(ProductID) FROM (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductID ASC) AS TabTemp ) ORDER BY ProductID ASC
select max(ProductID) from (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductNumber ) as tb
FROM basicdata_product
WHERE ProductID>(SELECT max(ProductID) FROM (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductNumber ASC) AS TabTemp) ORDER BY ProductNumber ASC
我是从这语句上截的一句,想看看效果,结果出错,为什么他的对呢?
表别名被你截漏了。ps:好久不见LZ了,哈哈
但恐怕得不到正确的结果,除非表按productID和ProductNumber排序的结果完全一致。
建议都按ProductID来排序:(如果productNumber建有适当索引,则可以把productID全部换成ProductNumber)
SELECT TOP 10 ProductNumber,ProductName,KindNumber,Unit,Creater
FROM basicdata_product
WHERE ProductID>
(
SELECT max(ProductID)
FROM (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductID ASC) AS TabTemp
)
ORDER BY ProductID ASC
select max(ProductID) from (SELECT TOP 10 ProductID FROM basicdata_product ORDER BY ProductNumber ) as tb