SQL语句报语法错误

下面这个SQL语句,写的虽然不合理,但它的确不应该报语法错误吧。
SELECT
MIN(opertime) opertime
FROM
(
SELECT MIN(c.billdate) opertime FROM ipb_itemlist c
WHERE c.inid = ‘’
)

报错信息:

1064 - You have an error in your SQL syntax; check the manual that corresponds to your TiDB version for the right syntax to use line 7 column 3 near “”
时间: 0.001s

感谢反馈

这个语句在 MySQL 上执行,报的错是

(1248, 'Every derived table must have its own alias')

加上 alias 之后,MySQL 和 TiDB 都能正常解析。因此可以改写为

SELECT
MIN(opertime) opertime
FROM
(
SELECT MIN(c.billdate) opertime FROM ipb_itemlist c
WHERE c.inid = ‘’
) t1

另外这里 TiDB 确实不应该报语法错误,已建 GitHub issue 进行追踪,预计将在 v4.0.6 修复。

thank u

:ok_hand:,可以关注下上边的 issue,对于 tidb 的返回我们会优化下