有两张表,表结构如下 A 表 [图片] B 表 [图片] A 表字段类型为 jsonb,里面是个存了 packid 的 json,请问这样的结构能关联到 B 表的 packid 吗? 试了一些比较傻的办法,这样做并不对 [图片]

关于 postgreSQL 的 jsonb 字段里面的 id 关连其他表的 id 的问题

本贴最后更新于 213 天前,其中的信息可能已经渤澥桑田

有两张表,表结构如下
A 表

imagepng
B 表

imagepng

A 表字段类型为 jsonb,里面是个存了 packid 的 json,请问这样的结构能关联到 B 表的 packid 吗?

试了一些比较傻的办法,这样做并不对
imagepng

  • SQL
    78 引用 • 238 回帖 • 3 关注
  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    10 引用 • 21 回帖 • 65 关注
  • Q&A

    提问之前请先看《提问的智慧》精读注解版,好的问题比好的答案更有价值。

    1115 引用 • 7269 回帖 • 586 关注
1 回帖   
请输入回帖内容...
  • SummerWind  

    create table A(
    packid jsonb
    );

    create table B(
    packid varchar(64)
    );
    insert into aimb.A values('["1","2"]');

    insert into aimb.B values('2');

    select * from A
    select * from B
    select json_each(packid) from aimb.A
    select ta.packid as Ap, tb.packid as Bp from
    (select jsonb_array_elements_text(packid) as packid from aimb.A) ta
    left join aimb.B tb on ta.packid = tb.packid

    select tb.packid from
    aimb.A ta
    , aimb.B tb where ta.packid @> ('["'|| tb.packid ||'"]')::jsonb