通过此查询,我将显示年份字段、asc顺序中的第一条记录和desc顺序中的最后一条记录。
如果年份字段不同,则效果很好
例子:
1960-1970
但如果场是一样的
例子:
1960
我看到了副本
1960 - 1960
我只想看一次
1960
如何做?
$query = "(SELECT
year as year_asc
FROM film_actor
INNER JOIN film ON film_actor.film_id = film.film_id
INNER JOIN actor ON film_actor.actor_id = actor.actor_id
WHERE film_actor.actor_id = $actor_id
ORDER BY year ASC
LIMIT 1)
UNION ALL
(SELECT
year as year_desc
FROM film_actor
INNER JOIN film ON film_actor.film_id = film.film_id
INNER JOIN actor ON film_actor.actor_id = actor.actor_id
WHERE film_actor.actor_id = $actor_id
ORDER BY year DESC
LIMIT 1)";
2条答案
按热度按时间apeeds0o1#
你可以用
UNION
,而不是UNION ALL
自UNION
将消除重复项。ehxuflar2#
如果需要最短和最长年份,可以将它们放入一个查询中:
如果要使用单列(可能带有连字符),可以使用: