作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有下表:
1. club_members (id, type, name)
2. male_members (name, age, location)
3. female_members (name, age, location)
4. senior_members (name, age, location)
我需要根据从第一个表中检索到的类型选择这 3 个表中的一个。对于 type=male
,我将从 male_members 等中进行选择。
所以我想写一个类似于
的查询select type, name , age , location from club_members , (2/3/4 table) where id=X ...
如何编写这样的查询。
可能正在使用 if/else
或 case
语句
最佳答案
假设 Name 作为表之间的链接。
select
C.type as Type,
COALESCE(m.name, f.name, s.name) AS MemberName,
COALESCE(m.age, f.age, s.age) AS MemberAge,
COALESCE(m.location, f.location, s.location) AS Location
from club_members C
left join male_members M on C.name=M.name and C.type='Male'
left join female_members F on C.name=F.name and C.type='Female'
left join senior_members S on C.name=S.name and C.type='Senior'
where C.id='Your value'
关于MySQL 查询 - 根据前提条件连接不同的表(从不同表检索的值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17565376/
我是一名优秀的程序员,十分优秀!