2013-08-29 3 views
0

У меня есть таблица: Table1 выглядит следующим образом:Group на один столбец, но не входит в другую колонку

id name  timestamp  
1 gate1  2013-08-27 17:00:27 
2 gate1  2013-08-27 17:00:27 
3 gate2  2013-08-27 17:00:27 
4 gate2  2013-08-28 17:00:27 

Я хочу, чтобы мой конечный результат, чтобы выглядеть следующим образом:

name  timestamp  
    gate1  2013-08-27 17:00:27 
    gate2  2013-08-27 17:00:27 
    gate2  2013-08-28 17:00:27 

Что самое эффективный способ сделать это в SQL?

Я пытался использовал [группу по имени], но я получаю результат выглядит неправильно

имя метки времени
Gate1 2013-08-27 17:00:27
gate2 2013-08-27 17:00 : 27

Заранее спасибо.

+1

отчетливое имя метки? – zxc

+0

'GROUP BY name, timestamp'? Если вы хотите, чтобы каждая временная метка создавала свою собственную группу, вам нужно включить ее в 'GROUP BY'. – MatBailie

+0

Но мне нужно включить только имя GROUP BY. – Seetha

ответ

1

Вы не описали никакой логики, почему там строки должны быть возвращены, но это выглядит как DISTINCT то, что вы ищете:

SELECT DISTINCT 
    name, 
    timestamp 
FROM 
    tableName 
+0

На самом деле я хочу использовать группу по имени. Я получаю имя от name_id, указанное в другой таблице. Поэтому я хочу использовать группу по имени. Если временная метка имеет такое же имя затвора, я хочу сгруппировать. Но если имя ворот имеет разную временную метку, я не собираюсь вместе. – Seetha

1

базы на информации, которую вы дали нам

select distinct name,timestamp from table
должен работать

+0

Это прекрасно работает. Но я хочу выбрать более двух полей в той же таблице. Поэтому, когда мне нужно добавить отдельное имя столбца. – Seetha

1
SELECT name, timestamp 
FROM tableName 
group by name, timestamp 
2

SELECT DISTINCT имя, метку времени из таблицы 1;

для живых демо, проверьте SQLFiddle

+0

Но я хочу выбрать более двух полей в этой же таблице. Поэтому, когда мне нужно добавить отдельное имя столбца. – Seetha

+0

@Seetha: DISTINCT в начале списка имен столбцов после SELECT выдаст вам строки с значениями DISTINCT этих строк. Например: SELECT DISTINCT col1, col2, col3, col4 FROM table; Это даст вам все строки с значением DISTINCT (col1, col2, col3, col4). – Jayvardhan