MySQL查询最多返回65535行(最大值)。如何检索超过限制的表的所有行? (总共120k)
query_string1 = "SELECT DISTINCT ID FROM table1"
print query_string1
try:
self.cursor.execute(query_string1)
self.ids = self.cursor.fetchall()
print "Select query was successfully executed"
print "%d unique ids where retrieved" %len(self.ids)
答案 0 :(得分:6)
您的问题可能源于您的DISTINCT
声明中有SELECT
这一事实。您可能在该表中有120K行,但这并不一定意味着该表中有许多不同的ID。如果您直接在MySQL中执行SELECT DISTINCT ID FROM table1
并返回65535行,那么该表中只有65535个不同的ID。如果你删除了distinct,你会看到所有120K,但是其中很多都是重复的ID
编辑:如果删除DISTINCT
并且在MySQL中运行查询时仍然只收到65535行,那么这就是你拥有的所有行。