V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yuan321
V2EX  ›  SQL Server

sql server 遇到的一个问题?

  •  
  •   yuan321 · 2022-06-03 10:00:36 +08:00 · 1041 次点击
    这是一个创建于 691 天前的主题,其中的信息可能已经有所发展或是发生改变。

    sql server 我想返回一条空数据如下

       select name,sex from student where id=100
    

    如果 id=100 的数据是空的话,前端得到的数据就是[],不仅没有数据就连字段也没有。我现在采用的一个笨方法就是

       select '' name,''sex
    

    请问下有没有更好的方法呢?

    7 条回复    2022-06-03 17:25:07 +08:00
    maocat
        1
    maocat  
       2022-06-03 10:05:25 +08:00 via iPhone
    这是 sql server 的问题吗?
    yuan321
        2
    yuan321  
    OP
       2022-06-03 10:07:46 +08:00
    @maocat 应该不是的
    yuan321
        3
    yuan321  
    OP
       2022-06-03 10:13:19 +08:00
    ``` sql server
    select IFNULL(name, '') name,IFNULL(sex, '') from student where id=100
    ```
    只能这样写吗?
    yuanix
        4
    yuanix  
       2022-06-03 10:16:55 +08:00 via Android
    后端检查一下不行吗
    ration
        5
    ration  
       2022-06-03 10:22:39 +08:00 via Android
    sql 不要改了,后端处理就好。
    Singular
        6
    Singular  
       2022-06-03 10:24:09 +08:00
    后段 select 的结果赋给 entity class 去处理,如果 select 的结果是空,你的 class 对应的字段也是空,再处理下 response 给前端的序列化规则就行。
    qwqaq
        7
    qwqaq  
       2022-06-03 17:25:07 +08:00
    大概是后端没有处理好,你需要写一条判断,当数据为空的时候响应你期望的内容,或者直接剔除掉,而不是和数据存在时一样的处理逻辑。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1212 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 23:15 · PVG 07:15 · LAX 16:15 · JFK 19:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.