我有一个运行良好的sql查询,但我需要一种方法来扩展这个查询,以便从另一个名为LineUps的表中获取信息。
原始查询:
$stmt = $conn->prepare("SELECT channel, description, Tier
FROM Channel_LineUps WHERE Market_ID = 1 ORDER BY Tier ASC");
我现在还需要从另一个名为的表中获取数据。
列在LineUps表中称为DIG和HD。
我尝试了以下操作,但不起作用:
$stmt = $conn->prepare("SELECT Channel_LineUps.channel, Channel_LineUps.description, Channel_LineUps.Tier, LineUps.HD, LineUps.DIG FROM Channel_LineUps, LineUps WHERE Channel_LineUps.Market_ID = 1 ORDER BY Channel_LineUps.Tier ASC");
我想能够确定一个频道在哪里被标记为DIG或HD的是,所以我想我需要一个单一的查询。
有什么想法吗?
您需要在两个表之间创建一个联接,即您需要从第一个表(Channel_lineUps)
到LineUps
有一个公共列,然后您可以在这两个表上有一个内部联接,如channel_LineUps.id=LineUps.related_column
您可以在where子句中添加类似where Channel_lineUps.market_id=LineUps.market_id
的内容,它应该会返回相关数据。