(SELECT * FROM app_detailsvvv as dtable INNER JOIN new_apps ON
new_apps.trackId=dtable.trackId WHERE primaryGenreName='Games'
AND composed='1' AND new_apps.top>0)
UNION (SELECT * FROM app_detailsvvv as dtable WHERE primaryGenreName='Games')
LIMIT 12
错误:在new_apps联盟与内部联接,MySQL错误
#1222 - The used SELECT statements have a different number of columns
有场不在app_detailsvvv,我怎么能在工会掩盖第二查询莫名其妙。
编辑:
(SELECT dtable.* FROM app_detailsvvv as dtable INNER JOIN new_apps ON new_apps.trackId=dtable.trackId WHERE primaryGenreName='Games' AND composed='1' AND new_apps.top>0) UNION (SELECT * FROM app_detailsvvv as dtable WHERE primaryGenreName='Games') LIMIT 12
工作然而,当我添加ORDER BY new_apps.top ASC
我得到这个新的错误:
#1250 - Table 'new_apps' from one of the SELECTs cannot be used in global ORDER clause
您的查询没有任何意义。它从'app_detailsvvv'表中选择12个任意行,其中'primaryGenreName ='Games''。我怀疑你想要优先处理退货,但是'union' *绝对会把行弄得乱七八糟。 –
我想选择顶部asc的顺序,只有最上面的trackIds可用,如果没有,用分页运行,然后选择app_detailsvvv – lbennet
@ibennet。 。 。这就是我的答案中的查询。这不是你的查询所做的事情,即使固定为'union'中的列数。 –