2017-08-01 55 views
0

当比方说,我想作以下的PHP/MySQL查询使MySQL查询

$days=10; 
'SELECT * from database WHERE days<$days' 

这给了我是不到10天的记录设置一个PHP变量到无穷远。然后我想使用相同的代码行,但希望查看所有记录,这就是为什么我要将'$ days'变量设置为无穷大的原因。但是我下面的代码不起作用。

$days=INF; 
'SELECT * from database WHERE days<$days' 
+0

Couldent你只是让它成为一个非常高的数字?例如。 999999 – Vindur

+0

考虑使用不同的查询来处理_i想要的事情,因为它会更快。 – bracco23

+0

你可以好好利用,就像你的日子永远不会变成负面的一样,所以如果$ days是无穷大,那么查询将是'SELECT * from WHERE days> -1' –

回答

1

只是要$days一个非常大的数字:$days = 9999999999999有变量或SQL没有无穷大的概念。

另外,如果你只是想所有的日子,你可以做这样的事情:

$days=10; //set days to 0 for infinity 
$appendQuery = ""; 
if($days > 0) { $appendQuery = "WHERE days = " . $days; } 

$sql = 'SELECT * from database' . $appendQuery; 

然后,如果你设置$days为0,WHERE子句不追加到查询。这很丑陋,但只需要设置一个非常高的数字就可以了,这对大型记录集来说是一个更快的查询。