CJx*_*JxD 1 mysql sql csv join
首先,不要骂我试图这样做 - 我的老板要我将多个表中的数据列表转储到一个CSV文件中.
此CSV包含两类人员合并为一张表:永久员工和承包商.
某些值的获取方式取决于您所属的类别.例如,如果您是承包商,那么您的职位描述就在contractors.blended_role.如果您是永久性的,职位描述就在roles.blended_role哪里roles.id = staff.role.
所以我试过(像这样):
SELECT
stuff,
(CASE
WHEN c.blended_role IS NULL THEN
r.blended_role
ELSE
c.blended_role
END) as `Job Description`,
morestuff
FROM
everyone e
LEFT JOIN contractors c
ON c.id = e.id
LEFT JOIN staff s
ON s.id = e.id
LEFT JOIN roles r
ON r.id = s.role
Run Code Online (Sandbox Code Playgroud)
但是我遇到了语法错误
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'stuff, (CASE WHEN c.blended_role IS NULL THEN r.blended_role EL` at line 2
Run Code Online (Sandbox Code Playgroud)
有人可以建议替代方案吗?
语法错误来自缺少逗号几行.
您没有名为rv和的表别名cv.也许你的意思是:
SELECT
(CASE
WHEN c.blended_role IS NULL THEN
r.blended_role
ELSE
c.blended_role
END) as `Job Description`
Run Code Online (Sandbox Code Playgroud)
或者,更简单:
coalesce(c.blended_role, r.blended_role) . . .
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4621 次 |
| 最近记录: |