как решить этот конкретный запрос?

0
table1         table2 

col1 date     col1 date
a    d1       e     d4
b    d2       f     d5
c    d3       a     d6

Мне нужна новая таблица с 4 записями order by date, но if any entries of column 1 replicate it remove this duplication also. предположим, что если мой порядок дат d1>d6>d2>d3>d5>d4, тогда результат должен быть:

col1 date
a     d1
b     d2
c     d3
e     d5

И я также хочу знать, какие данные поступают из tabl1 или table2.

  • 0
    Я не понимаю!
  • 0
    почему f исключено? но e не исключено?
Показать ещё 3 комментария
Теги:

2 ответа

1
Лучший ответ

Попробуйте следующее:

select 
top 4 --you only need 4 of them?
col1, min(date) [date] from 
(
select col1, date from table1 
union 
select col1, date from table2
) t
group by col1
order by col1
  • 0
    и я также хочу знать, из какой таблицы поступают данные. Возможно ли это?
  • 0
    Кстати, мы также можем использовать лимит только для 4 записей.
0
select 
      col1,
      min( date ) date
   from 
      ( select col1, date
           from table1
        union all
        select col1, date
           from table2 )
   limit 4
   group by
      1
   order by
      2

И из примера данных, я думаю, вам нужно 5 записей. Вы пропустили элемент "f" из своих данных.

  • 0
    нет .. я хочу только четыре данных.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню