• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Shawn5
V2EX  ›  程序员

程序员小白,谁能帮忙回答下关于 SQL 字段值有方括号和引号的字符串值,该如何 left join。。。。。。。

  •  1
     
  •   Shawn5 · Oct 21, 2019 · 3196 views
    This topic created in 2569 days ago, the information mentioned may be changed or developed.

    问题描述在这里 https://segmentfault.com/q/1010000020757334

    求哪位大佬解答下!!!!

    14 replies  •  2019-10-23 10:33:12 +08:00
    fiypig
    fiypig
    Oct 21, 2019
    1
    你存进去就是这样的, 存进去不要加括号
    Shawn5
    Shawn5
    OP
    Oct 21, 2019
    2
    @fiypig 不是我存的,这个是我们公司外包给一家软件公司,他们的程序员写的,我只是学习下,正好想列个结构树,但是这 2 个表没法关联。。。。。百度上实在找不到,所以来这里求求看
    taotaodaddy
    taotaodaddy
    Oct 21, 2019 via Android
    3
    带方括号的数据很凑巧是只有一个元素的数组
    Shawn5
    Shawn5
    OP
    Oct 21, 2019
    4
    @taotaodaddy 数据库的字段值还有数组类型。。。。
    taotaodaddy
    taotaodaddy
    Oct 21, 2019 via Android
    5
    @Shawn5 json
    newlife
    newlife
    Oct 21, 2019
    6
    不能啊,看结构,一个成员可以属于多个部门,你这个 left jion 就不合适呀
    taotaodaddy
    taotaodaddy
    Oct 21, 2019 via Android
    7
    如果那列的数据类型是 json,就还算说得过去,如果只是字符串,内容带方括号就说不过去了
    Shawn5
    Shawn5
    OP
    Oct 21, 2019
    8
    @newlife 一个成员只能是一个部门的
    @taotaodaddy 我看了下类型,是字符串类型 - -!
    taotaodaddy
    taotaodaddy
    Oct 21, 2019 via Android
    9
    @Shawn5 你可以问问他存方括号是几个意思,是用字符串存了 json 吗,是想放数组吗
    Shawn5
    Shawn5
    OP
    Oct 21, 2019
    10
    好了,解决了,用了正则匹配,谢谢大家!!!
    tenclock
    tenclock
    Oct 22, 2019
    11
    @Shawn5 正则怎么写的呢楼主,不然帖子没个结果,看着怪难受
    sadfQED2
    sadfQED2
    Oct 22, 2019
    12
    这种字段理论上就没法做关联吧,你可以使用字符串替换或者正则等方法筛选,然后拼表,但是这种性能堪忧啊,如果只是临时的统计数据还好,不然数据量大了就有问题
    Shawn5
    Shawn5
    OP
    Oct 23, 2019
    13
    @tenclock a.department REGEXP b.department_id 这样就 OK 了。。。
    Shawn5
    Shawn5
    OP
    Oct 23, 2019
    14
    @sadfQED2 我也很纳闷为啥要这样存数据,他说是为了引导。。。。不知道啥意思啊
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1739 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 23:45 · PVG 07:45 · LAX 15:45 · JFK 18:45
    ♥ Do have faith in what you're doing.