以下代码显示了项目的最大日期并且一切正常。
SELECT
pricing_id, pricing.field, pricing.region, price, max_date
FROM
pricing
INNER JOIN
(SELECT
field, MAX(end_date) AS 'max_date'
FROM
pricing, regions
GROUP BY field) AS tmptable ON tmptable.max_date = pricing.end_date
AND tmptable.field = pricing.field
ORDER BY region, pricing.field
我正在尝试从 regions.region_name 中提取区域名称以替换仅显示 ID 的 pricing.region 列。我尝试了通常的 where 子句来连接表并显示描述性名称,但它破坏了它。
有人能帮忙吗?
谢谢,
约翰
最佳答案
您必须从区域表中选择 region_name
有点像
SELECT
pricing_id, pricing.field, tmptable.region_name , price, max_date
FROM
pricing
INNER JOIN
(SELECT
region_name , field, MAX(end_date) AS 'max_date'
FROM
pricing, regions
GROUP BY field) AS tmptable ON tmptable.max_date = pricing.end_date
AND tmptable.field = pricing.field
ORDER BY region, pricing.field
应该可以。
关于mysql - 链接到另一个表以使用内部联接获取名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42512700/