擅长:python、mysql、java
<p>您可以将15分钟的检查直接合并到SQL查询中。这样,就不需要再纠结于时间戳了,而且在我看来,读代码要容易得多。在</p>
<p>如果需要表格中其他列的日期:</p>
<p><code>select * from machines where now() > heartbeat_time + INTERVAL 15 MINUTE;</code></p>
<p>如果您只对总数感兴趣:</p>
<p><code>SELECT count(*) FROM machines WHERE NOW() > heartbeat_time + INTERVAL 15 MINUTE;</code></p>
<p>这样你就可以当前取款()并获取None或tuple,其中第一个值是时间戳早于15分钟的行数。在</p>
<p>对于迭代resultset,它应该足够编写</p>
<pre>
cur.execute('SELECT * FROM machines')
for row in cur:
print row
</pre>
<p>因为基游标的行为已经类似于使用.fetchone()的迭代器。在</p>
<p>(假设您的数据库中有您在问题中所述的时间戳)</p>
<p>@user5740843:<code>if str(result) >= 15:</code>将无法按预期工作。因为<code>True</code>,所以它总是<code>True</code>。在</p>