【发布时间】:2016-09-13 13:45:58
【问题描述】:
我有一个表,其中包含多个类别,然后是针对这些值的值 - 我需要尝试从该表(仅使用 MySQL)中提取值不为零的类别名称和值本身.
例如:
ID car phone gym pension
1 200 15 12 20
2 0 15 12 25
3 0 0 0 30
4 0 0 0 0
5 150 20 12 0
在上面我需要得到类似的东西:
1 Car 200
1 Phone 15
1 Gym 12
1 Pension 20
2 Phone 15
2 Gym 12
2 Pension 25
3 Pension 30
5 Car 150
5 Phone 20
5 Gym 12
以下查询返回正确的 ID 和值,但它也返回零值(ID 4 除外)而不是类别名称:
SELECT id, car, phone, gym, pension from benefits where (car!=0 OR phone!=0 OR gym!=0 OR pension!=0)
我可以在 PHP 中执行此操作,但是否可以仅在 MySQL 中执行此操作?
【问题讨论】:
-
有
(car!=0 OR phone!=0 OR gym!=0 OR pension!=0)而不是(car!=0 AND phone!=0 AND gym!=0 AND pension!=0)的原因 -
因为那不是他想要的……
-
imo,可悲的是,您需要的输出是它最初应该如何保存在数据库中。 ;-/
-
@RyanVincent 很高兴,我同意你的看法
-
@RyanVincent 很不高兴我也同意你的观点,但事实并非如此:(
标签: mysql