php - Mysql-根据特定条件从两列中选择

标签 php mysql count

我有两个表 Table1 和 Table2,它们通过 xid 和 Yid 相互连接。

表1

xid(int)    category(varchar)       subcat(varchar)

1           Venue                   Resort
2           Venue                   Resort
3           Venue                   Resort
4           Venue                   Resort
5           Venue                   Resort
6           Venue                   Resort
7           Venue                   Banquet Hall
8           Venue                   Resort
9           Apparel                 Designer

表2

Yid(int)    minp(varchar)           maxp(varchar)

1           800                     1000
2           900                     1200
3                                   1100
4           1300                    1600
5                                   1800
6           800                     2000
7           800                     1000
8           1500                    2100
9           15000                   60000

我将这些供应商分为三类,第一类供应商的价格低于卢比。 1000。第二类是价格低于1500和超过1000的供应商。价格超过1500为第三类。目前我仅与 maxp 比较价格,它对我有用。

我用来与 maxp 进行比较的查询是

SELECT xid from Table1,Table2 WHERE
Table1.xid=Table2.Yid 
AND category='venue' 
AND subcat='Resort' 
AND maxp<=1000

我得到的输出是

xid

1
7

现在我想将价格与 minp 和 maxp 进行比较,我想计算并获取所有那些 minp 或 maxp 小于 1000、在 1000 到 1500 之间、大于 1500 的 xid。

预计产出低于卢比。 1000

xid

1
2
6
7

预计产出超过卢比。 1000 且小于等于 1500

xid

2
3
4
8

注意:由于某些原因,我无法将 minp 和 maxp 的数据类型从 varchar 更改为 int 或 long,如果 minp 为空则不与其进行比较。

提前致谢...

最佳答案

您需要根据预期结果检查两列。

SELECT xid 
from Table1 
INNER JOIN Table2 
        ON Table1.xid=Table2.Yid 
Where category='venue' 
AND subcat='Resort' 
AND (minp<=1000 or minp<=1000)
and minp <> ''

找到卢比。 1000 且小于等于 1500

SELECT xid 
from Table1 
INNER JOIN Table2 
        ON Table1.xid=Table2.Yid 
Where category='venue' 
AND subcat='Resort' 
AND (minp > 1000 or maxp > 1000) and (minp <= 1500 or maxp <= 1500)
and minp <> ''

注意:开始使用INNER JOIN语法而不是旧式逗号分隔连接

关于php - Mysql-根据特定条件从两列中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45050348/

相关文章:

php - vagrant-shopware 建立数据库连接失败

php - 在html表格中显示来自mysql的数据

mysql - 计算同一查询中的多个行值,mysql

count - BlackBerry:分别跟踪 GPRS 和 WiFi 数据使用情况

php - wordpress-action hook 'pre publish post' ?

php - 以这种方式使用ajax有多安全?

PHP 打包/解包错误

mysql - 如何使用PHP在设定的日期自动从mysql中删除

mysql - Insert Into WHERE 列中的数据是特定的

javascript - jQuery - 计算点击次数并相应执行