![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 19
|
![]()
Имеются таблицы M и N. В таблице M есть поле num, в таблице N есть поле Name.
Необходимо подсчитать количество данных, которые различны. Различными данными считать те, у которых отличается одновременно num и Name. Как построить запрос? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
жуть какая... ;(
Вы уверены, что правильно сформулировали задачу?! таблицы точно НИКАК не связаны?! вот, "наскидку".. и абсолютно без уверенности, что это то, что Вам нужно... ![]() Код:
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 01.05.2009
Сообщений: 19
|
![]()
Мда, немного не так. Одна таблица, вот запрос, который должен выполняться, но в итоге почему-то ноль.
select count(ch1.sernum) from channels ch1, channels ch2 where ch1.dcid = ch2.dcid and ch1.objid = ch2.objid and ch1.devid = ch2.devid and ch1.joinid = ch2.joinid and ch1.chanid = ch2.chanid and ch1.meter<>ch2.meter and ch1.sernum<>ch2.sernum Последний раз редактировалось mihali4; 02.12.2009 в 17:19. |
![]() |
![]() |
![]() |
#4 |
Я есть!
Форумчанин
Регистрация: 17.02.2008
Сообщений: 318
|
![]()
Жестокая у вас связь... не жалеете вы себя
![]() что выдает этот запрос? Код:
©Учиться, учиться и еще раз учиться!
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 01.05.2009
Сообщений: 19
|
![]() Цитата:
А вообще из них с одинаковыми sernum и meter - 1. Т.е. при верном запросе должно получится 11. |
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
1) приведите данные (хотя бы скриншот), а если возможно - дайте тестовую БД (с двумя заполненными табличками)
2) если запрос Код:
|
![]() |
![]() |
![]() |
#7 | |
Пользователь
Регистрация: 01.05.2009
Сообщений: 19
|
![]() Цитата:
Oracle. Имеется одна таблица с первичными ключами dcid, objid, devid, joinid, chanid и внешними ключами meter, sernum и еще несколькими. Необходимо найти количество записей, если есть одинаковые, не считать их два раза. Одинаковые - это те, у которых равны meter и sernum. Я составила запрос: select count(ch1.sernum) from channels ch1, channels ch2 where ch1.dcid = ch2.dcid and ch1.objid = ch2.objid and ch1.devid = ch2.devid and ch1.joinid = ch2.joinid and ch1.meter<>ch2.meter and ch1.sernum<>ch2.sernum выдает порядка 42 записей, хотя удовлетворяющих условию - 11. Если связать и по chanid, то вообще говорит, что записей нет. |
|
![]() |
![]() |
![]() |
#8 |
Я есть!
Форумчанин
Регистрация: 17.02.2008
Сообщений: 318
|
![]() Код:
©Учиться, учиться и еще раз учиться!
|
![]() |
![]() |
![]() |
#9 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
поясню. вот вам пример таблички. (всё Ваше множество первичных ключей отметаем прочь, т.к. к поставленной задаче они отношения НЕ ИМЕЮТ!) Код:
|
|
![]() |
![]() |
![]() |
#10 | |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
количество строк | ciaonataha | Общие вопросы C/C++ | 3 | 05.05.2009 16:31 |
количество цифер(с++) | Cpluser | Помощь студентам | 1 | 05.05.2009 14:53 |
Количество строк | delphin100 | Общие вопросы Delphi | 2 | 26.03.2009 11:58 |
количество цифр и количество символов до первой гласной буквы | 111111 | Общие вопросы C/C++ | 2 | 22.12.2008 12:15 |
запрос который бы подсчитывал количество полных лет начиная с того года который указан в данных мне базах | PereCCC | Помощь студентам | 8 | 15.05.2008 16:24 |