Mysql 逻辑之间的SQL

Mysql 逻辑之间的SQL,mysql,Mysql,考虑到我想在包含最小和最大容量(即大于和等于/小于和等于)的范围内列出场馆的名称和价格,使用下面的SQL语句就足够了吗?有更好的表达方式吗 SELECT * FROM rooms WHERE capacity between '$minimum' AND '$maximum' 我只是想知道,因为这让我有点困惑 如果最小值为0,最大值为1000–SQL选择符合语句条件的行的逻辑是什么?是的,这是正确的。有关之间如何工作的说明,请参阅;正如您所看到的,它确实提供了一个包含的最小值和最大值,正如您所

考虑到我想在包含最小和最大容量(即大于和等于/小于和等于)的范围内列出场馆的名称和价格,使用下面的SQL语句就足够了吗?有更好的表达方式吗

SELECT * FROM rooms WHERE capacity between '$minimum' AND '$maximum'
我只是想知道,因为这让我有点困惑

如果最小值为0,最大值为1000–SQL选择符合语句条件的行的逻辑是什么?

是的,这是正确的。有关之间如何工作的说明,请参阅;正如您所看到的,它确实提供了一个包含的最小值和最大值,正如您所需要的

也就是说,尽管您的查询是完全正确的,但最好将
'$minimum'和'$maximum'
更改为
$minimum和$maximum
(无引号),这样就可以清楚地看到这些是数字,而不是字符串。

是的,这是正确的。有关之间如何工作的说明,请参阅;正如您所看到的,它确实提供了一个包含的最小值和最大值,正如您所需要的


这就是说,尽管您的查询是完全正确的,但最好将
'$minimum'和'$maximum'
更改为
$minimum和$maximum
(没有引号),这样就可以清楚地看到这些是数字,而不是字符串。

我觉得这样做很好,但我不知道你对什么感到困惑。“中间”标准选择从$minimum到$maximum的所有内容,包括在内,正如您所说的

根据,一些(未命名)数据库将在之间实现为独占而不是包含(也就是说,它不会选择等于$minimum或$maximum的值)。因此,用两个显式不等式代替标准可能更安全:

where capacity >= $minimum and capacity <= $maximum

where capacity>=$minimum和capacity这对我来说似乎很好,但我不确定您对什么感到困惑。“中间”标准选择从$minimum到$maximum的所有内容,包括在内,正如您所说的

根据,一些(未命名)数据库将在之间实现为独占而不是包含(也就是说,它不会选择等于$minimum或$maximum的值)。因此,用两个显式不等式代替标准可能更安全:

where capacity >= $minimum and capacity <= $maximum

where capacity>=$minimum and capacity我相信您的陈述会起作用-只需确保第一个值是最低的,
之后的值是最高的。进一步阅读:根据MySQL参考资料,中间是
=$val1的另一种方式,我相信您的语句会起到作用-只需确保第一个值是最低的,
之后是最高的。进一步阅读:根据MySQL参考,between是另一种
=$val1的方式,但它被标记为MySQL。然而,撇开这一点不谈,我总是对数据的准确性持谨慎态度。虽然它确实拥有大量的好信息,但它也提供了许多不正确的信息。请参阅以获得更多阅读。没错,但如果您使用适当的抽象层编写它,总有一天可能会有人决定将它移植到另一个数据库。但考虑到你的情况,这可能是完全不可信的。无论如何,谢谢你的链接。不过这被标记为MySQL。然而,撇开这一点不谈,我总是对数据的准确性持谨慎态度。虽然它确实拥有大量的好信息,但它也提供了许多不正确的信息。请参阅以获得更多阅读。没错,但如果您使用适当的抽象层编写它,总有一天可能会有人决定将它移植到另一个数据库。但考虑到你的情况,这可能是完全不可信的。无论如何,谢谢你的链接。