我尝试,因为作祟为了优化我的查询,为更多的理解, 我试图做到这一点很好的解决方案:Slow query when using ORDER BY这个mysql查询语法有什么问题?
我有70K在我的表,当我去为了这个,我有这个eeror:# 1248 - 每一个派生表必须有它自己的别名
我原来的查询是这样的:
SELECT * FROM
(SELECT * FROM profile
LEFT JOIN profileg USING(id)
WHERE X NOT IN (SELECT A FROM B) AND (S = 1)
DESC LIMIT 0, 20
) ORDER BY M
你可以提供一些帮助吗?!? 问候, 杰西卡
一般提示:如果你说你得到一个错误信息,**告诉我们它是什么**。至于你的查询,你不需要那些额外的括号。这种类型的包围仅在连接多个表时在sql server中需要。在MySQL中,它们不是必需的,反正你把它们放在错误的位置。 –
'profile'是表格还是列?您可以从中进行选择,还可以将它用作WHERE和ORDER BY子句中的列。如果你有一个与表名相同的列,你应该改变它,或者至少使用一个表别名,这样它的可读性就更高。 –
@ Marc,括号可以解决一些“orderby”pb的某些查询 – jess