Здравствуй, уважаемый читатель!
Ты наверняка знаешь, что в языке SQL, а точнее в команде SELECT, сразу после этого ключевого слова, можно указывать не только реальные столбцы таблицы, из которой выбираются данные (или столбцы из присоединенной таблицы), но также можно выводить любую другую информацию (не из какой либо из таблиц!). Такие столбцы будут называться псевдостолбцами. Для решения определенных задач, в блоке SELECT может понадобиться выводить только псевдостолбцы. 😌
Выводя данные сотрудников, например, ФИО и даты рождения, выведем, дополнительно, число 1 в отдельном столбце, текст «Текст» и любую дату тоже в своих отдельных столбцах:
Во время вывода ФИО и дат рождений сотрудников, будет выводиться еще информация, которую мы указали: обычное число, обычные текст и обычная дата. Три последних столбца не выводят данные из какой–либо таблицы, поэтому они называются псевдостолбцами.
С помощью FROM мы указали таблицу из которой нужно вычитывать данные. Запрос ничем не ограничен (нет WHERE), нет джоинов. Выходит, данный SELECT должен вернуть столько строк, сколько в таблице, указанной в блоке FROM. Верно? Теперь мы попробуем в блоке SELECT не указывать ни одного смыслового столбца. Пусть, например, выводится только некоторое число:
Получим:
Запрос выведет столько раз цифру 1, сколько строчек в таблице Persons. Почему так вышло? Команда SELECT, выбирая данные из таблицы Persons, могла бы выводить данные из реальных столбцов, а мы их в блоке SELECT не указали, хотя могли бы. Вместо этого мы решили показывать некоторый псевдостолбец. И он выводил свою информацию пока шло вычитывание строк из таблицы Persons, хоть и без отображения самих реальных данных из Persons. Надеюсь понятно изложил. Теперь, вероятно, у тебя, уважаемый ученик, есть вопрос для чего это нужно? Какие задачи можно этим решать. Псевдостолбцы – это очень мощный и в то же время простой механизм, добавляющий гибкость в использовании SQL. На уроках нашего SQL курса мы не раз прибегаем к их использованию, потому как они во много раз упрощают решение некоторых задач, а порой без них будет совсем не обойтись. Пока рассмотрим что еще можно выводить в псевдостолбцах.
На каждой строке вывода сотрудников, добавим номер выводящейся строки с помощью ROWNUM, вдобавок, в еще один псевдостолбец будем производить некоторые вычисления. Псевдостолбцу ROWNUM дали алиас ROW_NO:
Получаем:
Во время вывода информации о сотрудниках, выводился номер строки данных, а также, в еще один столбец мы выполнили некоторое простое вычисление.
Вот еще один пример: выведем в отдельный псевдостолбец текущую дату со временем (с помощью функции SYSDATE, возвращающую текущую дату и время):
Буду рад, если подпишешься на мой канал или оставишь комментарий к моему посту! Скоро будет продолжение!
Заходи на наш Youtube-канал и найдёшь много интересного и полезного про базы данных и язык SQL.
А здесь ты можешь пройти наш курс обучения языку SQL и получить мощные знания и умения! Всего за 27 уроков до уровня специалиста, имеющего трёхлетний стаж. Много практики в реальной базе данных! С нашей поддержкой и проверкой твоих самостоятельный задач! Записывайся, буду тебя ждать!