2013-09-19 4 views
0

Доброго утра, у меня есть следующая таблица со следующими записямиотчетов повторяется в таблице

Mov Descip Correlativo Total 
25558 AAAAAAAA 1 540 
25558 AAAAAAAA 2 540 
25559 BBBBBBBBB 3 40 
25560 CCCCCCCCC 4 50 
25561 DDDDDDDD 5 120 
25561 DDDDDDDD 6 120 
25561 DDDDDDDD 7 120 

Не знаю, как сделать запрос, чтобы показать мне, но без повторения записи, я попытался с DISTINCT делает не работа.

+1

Покажите нам запрос –

+0

Покажите нам свой запрос и чего вы хотите достичь? –

+4

У вас нет повторяющихся записей, все они разные, потому что столбец 'Correlativo' отличается в каждой строке. – RBarryYoung

ответ

3

Зависит, что вы хотите, чтобы выйти из этой таблицы:

Mov Descip Correlativo Total 
25558 AAAAAAAA 1 540 
25558 AAAAAAAA 2 540 
25559 BBBBBBBBB 3 40 
25560 CCCCCCCCC 4 50 
25561 DDDDDDDD 5 120 
25561 DDDDDDDD 6 120 
25561 DDDDDDDD 7 120 

Эти строки все различны, так как Correlativo уникален, поэтому DISTINCT ключевое слово будет возвращать все семь строк:

SELECT DISTINCT Mov, Descip, Correlativo, Total 
FROM YourTableName 

Если вы выберете Correlativo из списка выбора, DISTINCT должен отложить его до четырех строк:

SELECT DISTINCT Mov, Descip, Total 
FROM YourTableName 

Вы также можете использовать GROUP BY, но тогда вам нужно использовать агрегированную функцию, чтобы сообщить SQL Server, что делать с несколькими значениями Correlativo. Например, вы можете использовать MIN(), MAX() или SUM():

SELECT Mov, Descip, SUM(Correlativo), Total 
FROM YourTableName 
GROUP BY Mov, Descip, Total 
+0

Общее значение не должно добавляться, значение Корреляция - это AutoNumber, значение - это просто значение. Движение Mov повторяется несколько раз, если вы находите ссылки, является логикой, которая используется здесь, поэтому моя единственная забота - запись двух движений, но с все поля, я был Biendo CROSS APPLY, но не использовал. –

+0

Если вы правильно поняли, вы хотите исключить столбец Correlativo Identity из списка выбора и использовать DISTINCT. – criticalfix

0

Ваш вопрос немного света на деталях, насколько я могу видеть:

  • Correlativo (как подразумевается название на испанском языке): Is ID (autonumber?), очевидно, различается для каждой строки.
  • Mov abreviación de Movimiento?): Является ли идентификатор движка? или идентификатор движителя?
  • Описан: это просто текстовый общее описание
  • Всего: это общая вы хотите добавить

Если те, правильны, и здание на вершине решения critialfix, добавив итоги за Mov будет:

SELECT Mov, Sum (Total) 
FROM YourTableName 
GROUP BY Mov 

Или если Описан требуется:

SELECT Mov, Descip, Sum(Total) 
FROM YourTableName 
GROUP BY Mov, Descip 
+0

Общее значение не должно добавляться, значение Корреляция - это AutoNumber, значение - это просто значение. Движение Mov повторяется несколько раз, если вы находите ссылки, является логикой, которая используется здесь, поэтому моя единственная забота - запись двух движений, но с все поля, я был Biendo CROSS APPLY, но не использовал. –

Смежные вопросы