Mysql |显示2个条件的数据

时间:2016-10-09 17:37:45

标签: mysql

我有一张桌子

enter image description here

我必须找到最低和最高价格,并在一个表格中显示公司名称

4 个答案:

答案 0 :(得分:0)

创建新表并在表中使用外键或使用加入条件*强调

编写select语句

答案 1 :(得分:0)

在SQL或任何其他表中,如果要显示min,max和company,则所有行都具有相同的公式;在这种情况下,可能会有多个公司,因此您必须编写单独的查询以显示两个单独的表格第一行,其中第一行显示最小值,其他第一行显示最大值。

如果您使用SELECT min(price) , max (price) .....拥有一家公司,则可以编写单个查询,并且必须使用group by才能使查询生效。

答案 2 :(得分:0)

如果按公司名称表示bursa.name列,则使用简单聚合执行此操作:

CREATE TABLE bursa_agg AS (
SELECT
    name
  , MIN(price) AS min_price
  , MAX(price) AS max_price
FROM bursa
GROUP BY name
);

如果bursa.companyid是其他表的外键,则使用JOIN从不同的表中获取公司名称,如下所示:

CREATE TABLE bursa_agg AS (
SELECT
    c.name -- column with company name
  , MIN(b.price) AS min_price
  , MAX(b.price) AS max_price
FROM bursa b
INNER JOIN company c ON -- name of company table
  b.companyid = c.companyid -- column with company id in company table
GROUP BY c.name
);

答案 3 :(得分:0)

SELECT MIN(col2), MAX(col2) FROM table GROUP BY col1;