hehezhang
V2EX  ›  问与答

今天需求提了个我觉得实现起来非常困难的东西,求助

  •  
  •   hehezhang · Apr 30, 2021 via Android · 3015 views
    This topic created in 2014 days ago, the information mentioned may be changed or developed.

    mysql 数据库,主表有一个字段是 xxxid,这个 xxxid 存在另外一个库里的表,这个 id 对应一个 xxxname 字段,要对这个 name 字段 like 查询,换句话就是说要跨库 like 查询,这应该怎么做

    10 replies  •  2021-04-30 17:25:44 +08:00
    zxCoder
    zxCoder
    Apr 30, 2021
    1
    没看懂
    zoharSoul
    zoharSoul
    Apr 30, 2021
    2
    没看懂 +1
    shakaraka
    shakaraka
    Apr 30, 2021
    3
    你都懂说跨库 like 咯。那不就这样么
    Autmn
    Autmn
    Apr 30, 2021
    4
    @wunonglin 有理有据。令人信服
    SoulSleep
    SoulSleep
    Apr 30, 2021
    5
    这样配一下

    再那样设置一下

    就可以 select xxx from a.table_a t1 left join b.table_b t2 on t2.xx=t1.xx where .....like 了。。。

    其实我们都是用 es 解决。。

    我们的 mysql 不存在 join 语法😅😅😅😅
    IceMimosa
    IceMimosa
    Apr 30, 2021
    6
    不允许 join 的话,只能 xxxname 做 like 处理,查出对应的 id 。然后回主表用 xxxid in (刚刚查出的 id),注意控制好数量。
    Mountain
    Mountain
    Apr 30, 2021
    7
    presto?
    oldZhang
    oldZhang
    Apr 30, 2021
    8
    是这个意思吗?
    SELECT * FROM db1.table1 WHERE db1.table1.xxxid IN (SELECT id FROM db2.table2 WHERE `name` LIKE "%abc%")
    waterlaw
    waterlaw
    Apr 30, 2021
    9
    先在主表把 xxxid 都查出来, 预留一个字段放 xxxname, 再用 xxxid 从另一个库查对应的 xxxname, 把结果插入预留字段中。
    waterlaw
    waterlaw
    Apr 30, 2021
    10
    题目看反了, 反过来也一样哈
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1770 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 17:20 · PVG 01:20 · LAX 09:20 · JFK 12:20
    ♥ Do have faith in what you're doing.