SQL没有获得正确的记录

时间:2017-08-01 09:56:33

标签: sql

我的SQL查询存在问题。它获得的记录与某些"要求不匹配"。

让我们说现在的时间戳是 1501580316 。然后它仍会返回whoisexpire值超过此值的记录(例如1509422400)。我认为它与whoisupdate下面的AND相冲突,因为我试图看到whoisupdate对这些记录的价值是什么,但它返回0.但我没有得到为什么它仍然在上面的AND不匹配时得到它。

SELECT * FROM domains
    WHERE tld IN ('com')
      AND (whoisexpire !='0' OR whoisexpire<=".time().")
      AND (whoisupdate=0 OR whoisupdate<=".time().")
      AND majrefd>=25
      AND majtf>=10
    ORDER BY whoisexpire
    LIMIT 25

编辑:

这是我正在尝试的SQL查询:

SELECT * FROM domains
    WHERE tld IN ('dk')
      AND ((whoisexpire !=0 OR whoisexpire<=1501586177) AND (whoisupdate=0 OR whoisupdate<=1501586177 ))
      AND majrefd>=25
      AND majtf>=10
    ORDER BY whoisexpire

这是结果: enter image description here

看看whoisexpire中的值是如何超过1501586177的,实际上它是不可能的。

1 个答案:

答案 0 :(得分:1)

您的支架订单已经用完了,这应该可以解决它。

SELECT * 
FROM domains
WHERE ((whoisexpire !='0' OR whoisexpire<=".time().") AND (whoisupdate=0 OR whoisupdate<=".time()."))
AND majrefd>=25
AND majtf>=10
AND tld IN ('com')
ORDER BY whoisexpire
LIMIT 25