gpt4 book ai didi

mysql - 高级 SQL 查询设计

转载 作者:行者123 更新时间:2023-11-29 06:23:05 25 4
gpt4 key购买 nike

我有一个包含产品的表格,用户可以选择他想让它们可见的地区和城市。他可以从下拉菜单中选择“所有地区”和“所有城市”,然后我将输入“列 = 0”。

买家可以选择他们想要观看产品的城市,这样他们就有一个下拉菜单来选择地区和/或城市。他们还可以选择来自所有地区和/或城市的产品。

问题是这个高级查询会是什么样子。

  1. 如果卖家点击了一个特定地区但点击了所有城市,那么如果买家选择了该地区,他可以选择他想要的任何城市。该产品仍会显示。

  2. 买家可以选择所有城市,而不是选择城市。例如。然后他将看到所有帖子,无论它们发布到哪个城市。

我是 SQL 新手,因此如果您能指导我为此查询选择正确的命令,那就太好了。这对我来说有点复杂,我不知道从哪里开始。

最佳答案

我想我明白你的意思了。您的查询可以有两个参数,一个用于城市,一个用于区域。

在城市下拉列表中,如果用户选择一个城市(例如洛杉矶),则 @city 参数将包含该城市(例如 LAX 等代码)。如果他们选择“所有城市”,则 @city 参数的值为 NULL。

区域相同。

那么您的查询可能类似于:

SELECT ...
FROM city_tbl
INNER join region_tbl ON ...
WHERE ( @city IS NULL or @city = city_tbl.city_code )
AND ( @region IS NULL or @region = region_tbl.region_code )
AND ...

因此,如果他们选择了“所有城市”,@city 为 NULL,他们将看到所有城市,否则他们选择的特定城市必须与 city_tbl.city_code 相匹配。

我怀疑您的想法有点复杂,但希望这是在正确的轨道上。

关于mysql - 高级 SQL 查询设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1879811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com