当我决定解决这个问题时,这个问题似乎很简单,但事实证明这个问题非常困难。它涉及根据访问者从下拉列表中选择的内容显示“范围”细节。
下拉列表包含V01 N01,V01 N02等选项。 V =体积,N =数量。每卷中有20个数字,有50个卷。因此搜索下拉列表将包含V01 N01-V01 N20,V02 N01-V02 N20,依此类推至V50 N20。
如果访客想要在V08 N10和V12 N23之间显示所有书籍,我想显示从V08 N10到V12 N23的所有书籍。我的代码删除了选择,以便MySQL将收到VolumeNo = 8和IssueNo = 10.
但是,我想不出一个能做我想做的事情的SELECT语句。这是(简洁版):
SELECT * FROM tablename WHERE(VolumeNo> = 8且IssueNo> = 10)和(VolumeNo< = 12且IssueNo< = 23)
这显然不起作用,但我希望你能得到我在这里想要完成的事情的要点。我很感激提供任何指导。谢谢。
答案 0 :(得分:1)
您需要使用OR
代替And
来处理这两个条件
SELECT * FROM tablename WHERE (VolumeNo >= 8 and IssueNo >= 10) OR (VolumeNo <= 12 and IssueNo <= 23)