русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

SELECT DISTINCT


Дата добавления: 2015-07-09; просмотров: 605; Нарушение авторских прав


P2.PR_NAME||' '||P2.PR_NAME2||' '||P2.PR_NAME3AS"ФИО",P2.PR_BIRTHDAYAS"Дата рождения"

FROM PERSONP2INNER JOINPERSONP1ON

(P2.PR_NAME=P1.PR_NAME) AND (P2.PR_CODE<>P1.PR_CODE)

ORDER BY 1

Если в исходной таблице есть больше чем два человек с одной фамилией мы получим дублирование строк, поэтому используем DISTINCT для исключения дубликатов. Результат упорядочиваем по вычисляемому полю ФИО, чтобы сразу увидеть группы однофамильцев.

Листинг 22. Результат самообъединения таблицы PERSON с самой собой - список всех однофамильцев.

ФИО Дата рождения
Блинова Людмила Александровна 28.08.1957
Блинова Ольга Владимировна  
Блинова Светлана Александровна 05.05.1980
Васильева Марианна Юрьевна  
Васильева Наталья Васильевна 09.11.1980
Зеленина Екатерина Владимировна 16.12.1977
Зеленина Надежда Александровна 11.12.1965
Зеленина Наталья Александровна 23.09.1990
Зеленина Ольга Викторовна 30.04.1958
Култышева Лиана Валентиновна 22.01.1970
Култышева Наталья Сергеевна  
Лобанов Алексей Викторович 18.11.1951
Лобанов Владимир Николаевич  
Лядова Надежда Вячеславовна  
Лядова Наталья Викторовна 12.01.1973
Некрасова Елена Павловна 08.09.1970
Некрасова Татьяна Николаевна 04.12.1949
Новикова Вера Валерьевна 09.03.1947
Новикова Марина Рафаиловна 30.11.1975
Рожкова Анастасия Сергеевна  
Рожкова Оксана Юрьевна  
Степанова Ирина Борисовна  
Степанова Наталья Алексеевна 09.11.1969

Обратите внимание на то, что в данном случае мы обязаны для таблиц указывать псевдонимы, чтобы точно указывать в операторе, к какой именно таблице относится тот или иной столбец. В нашем случае используются псевдонимы P1, P2. Имея два псевдонима, таблицу можно рассматривать как две разные таблицы.





<== предыдущая лекция | следующая лекция ==>
Полное внешнее соединение | Связанные подзапросы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 2.902 сек.