我有两个相同的表(除了名称),并试图运行下面的时候,我得到Error Code: 1054. Unknown column 'pages_jj.pageid' in 'where clause'
相同的表 - 在未知列Where子句
SELECT pages.pageid,pages.maintext FROM databasename.pages
WHERE pages.pageid=pages_jj.pageid LIMIT 50000;
请帮帮忙!
我有两个相同的表(除了名称),并试图运行下面的时候,我得到Error Code: 1054. Unknown column 'pages_jj.pageid' in 'where clause'
相同的表 - 在未知列Where子句
SELECT pages.pageid,pages.maintext FROM databasename.pages
WHERE pages.pageid=pages_jj.pageid LIMIT 50000;
请帮帮忙!
你必须在pages_jj表添加到FROM子句,如:
SELECT pages.pageid,pages.maintext FROM databasename.pages, databasename.pages_jj
WHERE pages.pageid=pages_jj.pageid LIMIT 50000;
你需要提及你的FROM子句中的两个表,否则也不会知道什么是pages_jj。
SELECT pages.pageid,pages.maintext FROM databasename.pages, databasename.pages_jj
WHERE pages.pageid=pages_jj.pageid LIMIT 50000;
但请注意,这将返回两个表的交叉乘积。如果pageid值在表pages_jj中是唯一的,则没有问题。但是,如果pages_jj可以包含多行具有相同的pageid,然后从页面线将被作为有在pages_jj具有相同pagesid线路选择很多次......可能会或可能不是你所期待的。
,让每一个匹配行只有一个发生在页面,使用以下命令:
SELECT pages.pageid, pages.maintext FROM databasename.pages
WHERE EXISTS (SELECT pageid FROM databasename.pages_jj WHERE pages.pageid=pages_jj.pageid) LIMIT 50000;