我有一个产品表,如果表为true,则产品表中的列available
的数据类型为boolean
。如果为false,则产品可用。
所以我有一个选择菜单,但是我对如何显示选项“全部”,“不可用”和“可用”表示怀疑,这些值可以像下面一样是静态的,还是应该来自数据库? >
<select>
<option value="0">Not Available</option>
<option value="1">Available</option>
<option value="2">All</option>
</select>
然后您知道如何执行sql查询以仅获取其可用性列等于用户选择的可用性的记录,并在用户选择“全部”时显示所有记录吗?要根据用户选择的可用性来获取产品,这应该可行:
Select * from products where availability = selectedOption
但是您是否知道如果用户选择“全部”,查询将显示所有产品,并且在访问页面时默认显示所有产品?
答案 0 :(得分:0)
让我们一个一个地解决这个问题:
所以我有一个选择菜单,但是我对如何显示选项“全部”,“不可用”和“可用”表示怀疑,这些值可以像下面一样是静态的,还是应该来自数据库? >
这取决于您,可以将这个选项存储在数据库中并动态加载,也可以按照您的方式进行操作(静态选项)。
然后您知道如何执行sql查询以仅获取其可用性列等于用户选择的可用性的记录,并在用户选择“全部”时显示所有记录吗?
您没有指定正在使用的语言,但是您走的路正确。您必须动态构建此select
语句,并且用户最终选择的选项为parameter
。但是,对于“全部”选项,您将必须执行以下操作(这是伪代码,请适应您的语言):
if selectedOption === 'All' then
select * from products
else
select * from products where availability = selectedOption
当然,此代码也有变种,这只是供您理解。