首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用第一个MySQL查询的结果从第二个表中提取数据

使用第一个MySQL查询的结果从第二个表中提取数据
EN

Stack Overflow用户
提问于 2014-02-26 06:15:28
回答 2查看 46关注 0票数 0

我有两张桌子-

代码语言:javascript
复制
DEALS
----------------------------------------------
ID     PHONE_NAME    CONTRACT_NAME
19     iPhone 5      Talk 200
72     Galaxy S4     Talk 300
36     Xperia Z1     Talk 400
---------------------------------------------- etc etc

代码语言:javascript
复制
CONTRACTS
----------------------------------------------
ID     PACKAGE       INCLUDED_VALUE      DATA
11     Talk 200      100 minutes         1GB
23     Chat 750      Free insurance      2GB
63     Talk 400      Free car            700MB
84     Talk 300      Free dog            650MB
---------------------------------------------- etc etc

我试图(徒劳无功)做的就是这样显示数据:

代码语言:javascript
复制
iPhone 5     Talk 200    100 minutes and 1GB
Galaxy S4    Talk 300    Free dog and 650MB
Xperia Za    Talk 400    Free car and 700MB

因此,基本上,我希望显示每个交易及其来自deals表的信息,并将DEALS表中的CONTRACT_NAME与CONTRACTS表中相应的PACKAGE列(每个包是唯一的,没有重复的)进行匹配,以便显示INCLUDED_VALUE和DATA列以及常规交易信息。因此,最终结果将不是仅仅看到“Talk 200上的iPhone 5”,而是“Talk 200上的iPhone 5,100分钟和1 1GB数据”。

我试过学习连接,但我的大脑严重失败了(尽管这不是正则表达式的竞争,哈哈)--有人能帮上忙吗?

EN

回答 2

Stack Overflow用户

发布于 2014-02-26 06:17:41

代码语言:javascript
复制
SELECT
  DEALS.PHONE_NAME,
  DEALS.CONTRACT_NAME,
  CONCAT(CONTRACTS.INCLUDED_VALUE,' and ',CONTRACTS.`DATA`)
FROM
  DEALS INNER JOIN CONTRACTS
  ON DEALS.CONTRACT_NAME=CONTRACTS.PACKAGE
票数 2
EN

Stack Overflow用户

发布于 2014-02-26 06:21:05

您可以使用以下内容来解析您的查询:

从交易a内部连接合约b ON a.CONTRACT_NAME = b.PACKAGE中选择PHONE_NAME、PACKAGE、CONCAT(INCLUDED_VALUE,‘and ',DATA)

再见。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22027427

复制
相关文章

相似问题

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