选择不超过

时间:2011-07-24 19:46:03

标签: php mysql

我想知道是否有人可以帮我解决这个小问题。

我想从数据库中选择一些数字不超过设定数字的东西。

这就是我所拥有的(片段):

$Level = "1"; //Retrieved from the DB, just keeping it simple.
@$Query = mysql_query("SELECT * FROM users,store WHERE users.ID = '$ID' AND store.LevelReq <='users.Level'");

问题在于,它不会显示任何等于$ level的内容。

(项目......等级:0) - 显示 (项目......等级:1) - 不显示。

所以我想要的是相当于php的!&gt; 1(不超过1),但如果可能的话,采用MYSQL格式,但这不起作用。

5 个答案:

答案 0 :(得分:1)

你应该记住'不超过'总是与'低于和等于'相同,所以你应该使用field <= value。 (所以在你的情况下:field <= 1。)

答案 1 :(得分:1)

我假设Level是表用户的一个字段,如果是,那么你在查询中有一个引用问题,并用PHP var查询,试试:

$Query = @mysql_query("SELECT * FROM users,store WHERE users.ID = '{$ID}' AND store.LevelReq <= {$Level}");

答案 2 :(得分:0)

表和列分别进行转义,而不是'users.Level',请尝试user.'level'。 (TABLE.COLUMN)

$Level = "1"; //Retrieved from the DB, just keeping it simple.
@$Query = mysql_query("SELECT * FROM users,store WHERE users.ID = '$ID' AND store.LevelReq <= users.'Level'");

答案 3 :(得分:0)

您正在将store.LevelReq与字符串“users.Level”进行比较,而不是列users.Level。删除users.Level周围的引号,一切都应该好!

答案 4 :(得分:0)

你确定不应该使用反引号而不是单引号吗?像这样:

$Level = "1"; //Retrieved from the DB, just keeping it simple.
@$Query = mysql_query("SELECT * FROM users,store WHERE users.ID = '$ID' AND store.LevelReq <=`users`.`Level`");