php - MySQL UNION 不返回唯一列

标签 php mysql sql

我有这个查询

SELECT model,year FROM new_vehicles WHERE make=Ford
UNION
SELECT model,year FROM old_vehicles WHERE make=Ford ORDER BY model    

在此之后,我在 PHP 中使用了 while 语句来获取这些模型以及年份的列表。

问题是这会打印列表中的重复模型。如果我在查询中不使用年份,我会得到唯一的型号列表。我需要年份,因为我在 WHILE 中使用它。

我在上面的 SELECT 之后添加了 unique,但它没有改变结果,可能是因为 UNION 无论如何都会返回唯一值。

无论如何,如何获得独特的模型并包括年份?

最佳答案

试试这个...

SELECT distinct(nv.model),
nv.year as newModelYear, 
ov.year as oldModelYear 
FROM new_vehicles nv, old_vehicles ov 
WHERE 
nv.make = ov.make and 
nv.make= 'Ford' 

关于php - MySQL UNION 不返回唯一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27311732/

相关文章:

php - 从数组中获取三个最大值

php - 使用 php 脚本保存数据并在发生错误时保留后变量

php - 远程连接到 MySQL Linux

php - 带分页的目录 View (Codeigniter)

MySQL 子查询返回多于 1 行错误

sql - 根据创建的时间戳消除行

mysql - 从特定范围中选择全部

javascript - 根据某些条件在我的 HTML 页面中创建一个对话框

php - 为什么 PHP 认为它正在写入文件,但事实并非如此?

sql - 查询数据库设置?