首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >列出履历数据

列出履历数据
EN

Code Review用户
提问于 2012-02-09 16:30:10
回答 1查看 90关注 0票数 1

我需要这样的ORDER BY来列出我的简历数据:当ep.data_terminonull时,它意味着该职务是您当前的工作(您可以有多个当前的工作),然后我必须首先列出它们。然后,我需要列出所有由ep.data_termino ASC订购的其他产品。

IF是我唯一的选择。我知道在查询中使用IFs从来不是一个好的选择(至少我是这么学到的),所以我在这里问是否有更好的解决方案。

代码语言:javascript
复制
    SELECT ep.nome_empresa, ep.data_inicio, ep.descricao, ct.nome as contratacao_tipo_nome, p.nome as profissao_nome, 

IF(ep.data_termino IS NULL,NOW(),ep.data_termino) as data_term

    FROM experiencia_profissional as ep
    JOIN contratacao_tipo as ct ON ct.codigo = ep.codigo_contratacao_tipo
    JOIN profissao as p ON p.codigo = ep.codigo_profissao
    JOIN experiencia_profissional_membro as epm ON epm.codigo_experiencia_profissional = ep.codigo
    JOIN membro as m ON m.codigo = epm.codigo_membro
    JOIN usuario as u ON u.codigo_membro = m.codigo

    WHERE u.codigo = 124
    ORDER by data_term DESC, ep.data_inicio ASC
EN

回答 1

Code Review用户

回答已采纳

发布于 2012-02-10 03:31:20

尝试:

代码语言:javascript
复制
ORDER BY ep.data_termino IS NOT NULL, ep.data_termino DESC, ep.data_inicio ASC

顺便说一下,

代码语言:javascript
复制
IFNULL(ep.data_termino,NOW()) 

是一种更清晰的表达方式:

代码语言:javascript
复制
IF(ep.data_termino IS NULL,NOW(),ep.data_termino)
票数 1
EN
页面原文内容由Code Review提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codereview.stackexchange.com/questions/8817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档