【问题标题】:Joining Tables With Conditions使用条件连接表
【发布时间】:2015-04-02 09:06:52
【问题描述】:

我想在加入条件加上两个条件的情况下加入两个表。一个来自第一个表,第二个来自另一个:

select * from `property_master`,`property_type_lookup`
WHERE `property_master`.`propertyType`=`property_type_lookup`.`property_type` AND `CityName`='Delhi' AND `property_type_lookup`.`property_group`='commercial';

【问题讨论】:

  • 问题/疑问是什么?
  • 那么您面临什么问题?得到任何错误?没有获取数据?提问时要具体,并提供一些具有预期输出的示例数据。 stackoverflow.com/help/how-to-ask
  • 第二个条件没有执行
  • 所以提供一些示例数据和预期的输出。
  • 它只显示第一个条件的过滤结果,即CityName='Delhi'

标签: mysql


【解决方案1】:

您的查询应该向您显示所有在德里的商业物业。如果你想要德里的所有建筑,以及所有商业建筑,无论它们在哪里,都可以改成这样:

select * from property_master pm
  inner join property_type_lookup pl
    on pm.propertyType = pl.property_type
  where cityname = 'delhi'
    OR pl.property_group = 'commercial';

如果你想要别的东西......你将不得不更好地解释它

编辑

如果你想要德里的所有商业建筑,查询(使用连接语法,而不是隐式连接)是这样的:

select * from property_master pm
  inner join property_type_lookup pl
    on pm.propertyType = pl.property_type
  where cityName = 'Dehli' 
    and property_group = 'Commercial'

这是我最好的小提琴展示我认为你想要的东西:

http://sqlfiddle.com/#!9/7513c/4

【讨论】:

  • 在这种情况下,您能否提供一个表格示例以及您在sqlfiddle.com 的数据?以及您希望结果是什么样子的详细示例?
  • 是任何其他方法来使它成为可能
  • 嗯,您可以准确描述您希望结果的样子吗?
  • 感谢@pala_,它工作正常。可能是服务器错误。
猜你喜欢
  • 2022-01-08
  • 2011-06-25
  • 2014-01-02
  • 1970-01-01
  • 2015-12-17
  • 2017-02-15
  • 1970-01-01
  • 2020-07-25
  • 2012-04-05
相关资源
最近更新 更多