报错:recordsreturned from subquery exceeded limit of **

MaxCompute SQL 中,使用 not in 后面接子查询,子查询返回的结果是上万级别的数据量,但语句中的子查询返回的col1的个数超过1000个时,系统会报错为 records returned from subquery exceeded limit of 1000。应该怎么去实现子查询限制1000呢?

请先 登录 后评论

1 个回答

热爱技术的小仓鼠

可以使用left outer join实现来替代子查询实现。 子查询:SELECT * FROM table_a a WHERE a.col1 IN (SELECT col1 FROM table_b b WHERE xxx); join查询:SELECT a.* FROM table_a a JOIN (SELECT DISTINCT col1 FROM table_b b WHERE xxx) c ON (a.col1 = c.col1)

请先 登录 后评论
  • 1 关注
  • 0 收藏,212 浏览
  • NX小编 提出于 2020-07-31 10:46

相似问题