mysql - 链接到另一个表以使用内部联接获取名称

标签 mysql database inner-join

以下代码显示了项目的最大日期并且一切正常。

    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/

相关文章:

firebase - 允许用户只访问他们自己在 Firebase 数据库中的数据?

使用 WHERE AND OR 的 MySQL 语句

php - 如何在 HTML 中为 mySQL 使用 PHP

android - 使用 ContentValues 数组批量插入

mysql - 每次创建表时间戳时都会自动添加 ON UPDATE

mysql - 使用 MySQL 在外表中按可用性查找属性

mysql - SQL 选择查询连接

php - 允许用户在搜索类型之间进行选择的内部连接不起作用

mysql - 根据下拉列表 ASP.NET 从数据库库存中减去数量

mysql - 导出后数据库导入错误