首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在没有键的情况下连接表?

如何在没有键的情况下连接表?
EN

Stack Overflow用户
提问于 2014-04-02 05:17:54
回答 1查看 66关注 0票数 1

是否可以在没有键情况下连接表,

代码语言:javascript
复制
table 1
------------------------------
no           code      area
------------------------------
0122133666   MOB       012221
92444444     LOC       9244
0343443434   DDD       03434
0092635252   INF       92
------------------------------

table 2
------------------------------
code         area      name
------------------------------
MOB          012       mobile-1
MOB          0129      mobile-2
LOC          9244      local-1
LOC          9243      local-2
INF          92        country-1
DDD          034       local-2
DDD          0344      local-3
------------------------------

我想要这样的结果

代码语言:javascript
复制
------------------------------------
no           code      area      name
------------------------------------
0122133666   MOB       012221   mobile-1
92444444     LOC       9244     local-1
0343443434   DDD       03434    local-2
0092635252   INF       92       country-1
--------------------------------------

看起来这是不可能的,有谁能帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2014-04-02 05:36:50

这将为您提供所需的结果:

代码语言:javascript
复制
SELECT  T1.no,
        T1.code,
        T1.area,
        T2.name
FROM Table1 T1
LEFT JOIN Table2 T2
  ON T1.code = T2.code
  AND T1.area LIKE CONCAT(T2.area,'%')

演示了这一点。

结果是:

代码语言:javascript
复制
╔═══════════╦══════╦════════╦═══════════╗
║    NO     ║ CODE ║  AREA  ║   NAME    ║
╠═══════════╬══════╬════════╬═══════════╣
║ 122133666 ║ MOB  ║ 012221 ║ mobile-1  ║
║  92444444 ║ LOC  ║   9244 ║ local-1   ║
║ 343443434 ║ DDD  ║  03434 ║ local-2   ║
║  92635252 ║ INF  ║     92 ║ country-1 ║
╚═══════════╩══════╩════════╩═══════════╝
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22797066

复制
相关文章

相似问题

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