MySQL для отображения самого раннего дубликата на основе заданных параметров - PullRequest
1 голос
/ 02 апреля 2012

Мне нужно, чтобы оператор сделал следующее:

  1. Из имени выведите дубликаты данных с самой ранней датой.

Например:

Если есть mich.edu с датой 4/2/2012 и mich.edu с датой 01.04.2012, я хочу, чтобы оператор выводил только mich.edu 4/1/2012

ВотМое утверждение:

echo "select name, reported_at from nodes where reported_at < curdate() or reported_at is null;" | mysql dashboard

Текущий вывод:

name            reported_at
ngsghsdfg.edu   2012-03-23 03:40:04
wasdfas.edu 2012-03-05 17:42:03
cnadfafg.uiowa.edu  NULL
qwerqwer.edu    2012-03-19 17:03:03
qwerqwre.edu    2012-03-30 20:04:02
qewrqwre.uiowa.edu  2012-03-24 16:10:02
qwerqewr.edu    2012-03-23 22:12:05
qwrewqreq.uiowa.edu NULL
qwerwqer.edu    2012-04-01 04:18:05
adfgnafg.edu    2012-03-27 18:21:01
adsfasf.edu         NULL

Ответы [ 2 ]

2 голосов
/ 02 апреля 2012

Похоже, вам нужна агрегатная функция min() :

echo "select name, min(reported_at) from nodes where reported_at < curdate() or reported_at is null group by name;" | 
mysql dashboard
0 голосов
/ 02 апреля 2012
select name, reported_at from nodes where reported_at < curdate() or reported_at is null order by reported_at desc group by name ;

также может сработать для вас, так как упорядочение по сравнению дат, а не строк (мин делает это еще)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...