Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.07.2012, 16:51   #1
reihtmonbern
Форумчанин
 
Регистрация: 08.01.2011
Сообщений: 102
По умолчанию MS SQL SERVER 2005

ЗДРАСТИ работаю на sql server 2005
сделал вот такой вот запрос select * from P,F WHERE P.PKey = F.PKey
как вы сами понимаете у меня две таблицы ну как бы перемножились вот в таблице P есть такой столбец под названием Наименование вот в нем поивились дублирующиеся строки подскажите как не нужно изменить запрос чтобы в именовании исчезли дубли вот .
select distinct Наименование from P,F WHERE P.PKey = F.PKey
но мне нужно отобразить не один столбец наименование а отобразить все столбцы подскажите как это сделать ??
reihtmonbern вне форума Ответить с цитированием
Старый 18.07.2012, 20:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
select distinct *
не помогает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.07.2012, 21:33   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Подход не понятен. Наименование допустим совпадает, остальные колонки могут не совпадать. Какие значения в них показывать - max, min, первые встреченные? distinct *
мало поможет в этом случае, все равно будут дубли наименования.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 30.07.2012, 21:16   #4
reihtmonbern
Форумчанин
 
Регистрация: 08.01.2011
Сообщений: 102
По умолчанию Обнавление темы

Здравствуйте. Подскажите пожалуйста как быть с такой ситуацией работаю я на sql serwer 2005
Пишу запрос по двум таблицам P,F :
select distinct P.[Наименование], P.[№_Заказа], P.[Цена_за_ед], P.[Дата_поставки], P.[Грузополучатель], P.[масса_брут/нетто], P.[Количество], F.[Сумма], F.[№_П/П], F.[Дата] from P,F where P.Pkey = F.Pkey получается перемножение строк дубли в столбце P.[Наименование] вот
рисунок pf
если убираю вторую таблицу из запроса
select distinct P.[Наименование], P.[№_Заказа], P.[Цена_за_ед], P.[Дата_поставки], P.[Грузополучатель], P.[масса_брут/нетто], P.[Количество]
from P,F where P.Pkey = F.Pkey то дублирующих строк нет всё хорошо
рисунок f
вот как изменить запрос ума не приложу чтобы данные отображались из двух таблиц без дублирования , может как ни будь с помощью подзапроса проблему решить подскажите пожалуйста . Заранее благодарен.
Изображения
Тип файла: jpg f.jpg (96.0 Кб, 143 просмотров)
Тип файла: jpg fp.jpg (172.7 Кб, 147 просмотров)
reihtmonbern вне форума Ответить с цитированием
Старый 31.07.2012, 06:36   #5
Karabash
Форумчанин
 
Регистрация: 26.07.2009
Сообщений: 216
По умолчанию

Цитата:
как изменить запрос ума не приложу чтобы данные отображались из двух таблиц без дублирования , может как ни будь с помощью подзапроса проблему решить подскажите пожалуйста
Перечитайте, пож., пост #3 Аватар'а
А также внимательно посмотрите результат своего запроса (на вашей же картинке).
В каких строках результата вы видите дублированные данные?
К примеру.
Код:
Наименование  Дата
Бобышка       2013-03-19
Бобышка       2012-06-09
... и т.д.
Такое сочетанию данных не считается дублированием.

Вы должны определиться что хотите получить в результате запроса и только потом его формировать.
Karabash вне форума Ответить с цитированием
Старый 31.07.2012, 09:15   #6
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

ничего они не перемножаются ... из картинки fp видно что для каждой записи посля F.[№_П/П], F.[Дата] разные, а в некоторых еще и поле F.[Сумма]. Из-за этой разницы они и выводятся каждой отдельной строкой
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 31.07.2012, 16:57   #7
reihtmonbern
Форумчанин
 
Регистрация: 08.01.2011
Сообщений: 102
По умолчанию спосибо за ответы

Спасибо вам за ответы просто я хочу дополнительно к полученному результату добавить ещё одно действие в столбце наименование убрать повторяющиеся наименования, строки вот и всё ??
reihtmonbern вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка в SQL server 2005 студенточка! Помощь студентам 0 18.12.2011 22:37
запрос в SQL server 2005 студенточка! Помощь студентам 0 17.12.2011 23:15
Работа с MS SQL Server 2005 EE LittleFatCat SQL, базы данных 2 03.10.2011 12:00
Запрос sql server 2005 Progsenya SQL, базы данных 1 16.01.2011 20:30