select a.id, c.name as status ,d.name as type
from a
left join b c on a.status =c.id
left join b d on a.type =d.id
select a.id,
(selct name from b where a.status = b.id) as status,
(selct name from b where a.type = b.id) as type
from a
a 表与 b 表关联,b 作为字典表,存着名称等信息,a 只有 id 。
不讨论这个表结构改变等等(以及用了很久,数据很多,而且不是我能决定的),仅从 SQL 角度
1.两种写法我都觉得很丑陋,有没有更好的
2.如果没有的话,哪一种稍微好一点
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.