【问题标题】:Get values from 2 different table but shows only 1 table data从 2 个不同的表中获取值,但仅显示 1 个表数据
【发布时间】:2017-07-28 13:29:29
【问题描述】:

嗨 我在标题中的查询可能不清楚,让我在描述中澄清你。 我在数据库中有 2 个表,名称分别为 'ABC' 和 'XYZ'。

ABC 表

|身份证号 |姓名 |电话 |性别 |

1        |戴夫       | 23423     |男
2       |雷曼 | 987887   |女
3      |肖恩  | 6237267 |男

XYZ 表

|身份证号 |用户 ID |血型 | rh 因子 |

1         | 3          | AB                  | +     
2       | 1           | B                  | -



如您在上面看到的,有两个表,现在我想要结果,即性别为男性、血型为 B 且 rh 因子为负的用户。 但输出应该是

|身份证号 |姓名 |电话 |性别 |

1        |戴夫       | 23423     |男

希望你明白我的意思。我不知道应该有用户 GROUP BY 还是什么。 提前致谢。

【问题讨论】:

  • select a.* from abc a Inner join xyz b on a.id = b.userId where b.bood_group = b and b.rh-factor = - ;
  • 请将您当前的代码放入您的问题中。
  • 感谢萨尔曼的回复。但我已将该列从表 1 移至表 2。再次感谢 :)

标签: sql join group-by inner-join


【解决方案1】:
SELECT a.* FROM ABC a JOIN XYZ b ON a.ID=b.ID
WHERE b.Bloodgroup='B' AND a.gender='Male' and b.rh_factor='-'

【讨论】:

    【解决方案2】:

    试试这个!..

    select abc.id,abc.name,abc.phone,abc.gender from abc inner join xyz 在 abc.id = xyz.user-id 上 abc.gender = 'male' 和 xyz.blood-group = 'b' 和 xyz.rh-factor='-'

    问候。 SK

    【讨论】:

      【解决方案3】:

      您可以简单地使用 INNER JOIN :

      SELECT a.* FROM ABC a INNER JOIN XYZ b ON a.ID = b.`user-id`
      WHERE  b.bood_group = 'B' and b.rh-factor = '-'
      

      如果您的列中有连字符,就像您的用户 ID 中一样,请使用 backtick(`)

      【讨论】:

      • 嗨,Akash,这是网址 wellspringinfotech.com/eggdonor 给我发你的电子邮件,我会发给你我想要的。
      • 最好在您的帖子中包含描述
      猜你喜欢
      • 2016-07-08
      • 1970-01-01
      • 1970-01-01
      • 2019-12-05
      • 2014-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-16
      相关资源
      最近更新 更多