Oracle SQL. 100 шагов от новичка до профессионала. 20 дней новых знаний и практики. Максим Михайлович Чалышев
Чтение книги онлайн.
Читать онлайн книгу Oracle SQL. 100 шагов от новичка до профессионала. 20 дней новых знаний и практики - Максим Михайлович Чалышев страница 16
Альтернативная форма записи:
Рисунок 10. Запрос к таблице CITY по заданному CITYCODE
Выберем все имена и фамилии из таблицы MAN:
Рисунок 11. Запрос двух колонок к таблице MAN
Все колонки (*) возраст больше 27 лет из таблицы MAN:
Рисунок 12. Запрос к таблице MAN, где возраст больше 27 лет
Из таблицы AUTO выберем номера автомобилей, выпущенных после 1 февраля 2005 года.
Рисунок 13. Запрос к таблице AUTO с ограничением по дате
Из таблицы AUTO выберем только зеленые автомобили.
Рисунок 14. Запрос к таблице AUTO, где цвет авто зеленый
Из таблицы MAN выберем только людей с именем Миша.
Рисунок 15. Запрос к таблице MAN: выбираем людей с именем Миша
Если осуществляется сравнение строковых данных, то есть тип данных в колонке сравнения VARCHAR, VARCHAR2, то строка сравнения заключается в одинарные кавычки.
Примеры
Выбрать из таблицы MAN все колонки (*), где имя Миша (равно Миша).
Рисунок 16. Запрос к MAN, где имя равно Миша
Выбрать из таблицы MAN все колонки (*), где имя не Олег (не равно Олег).
Рисунок 17. Запрос к MAN, где имя не равно Олег
Важные замечания
Несмотря на то что в SQL можно сочетать большие и маленькие буквы, в выражении в одинарных кавычках, при отборе и фильтрации текстовых данных регистр должен соблюдаться, иначе запрос отработает некорректно.
Выражение DATE’YYYY-MM-DD» работает только в СУБД ORACLE, в MS SQL SERVER и POSTGREESQL работа с данными типа «дата» осуществляется по-другому (смотрите подробности документации к этим СУБД).
Следует учитывать, что в некоторых типах баз данных для неравенства можно использовать <> или знак!=, подобную информацию необходимо уточнять в документации к СУБД.
Вопросы учеников
Какой способ написания команды SELECT наиболее часто используется?
Вы можете использовать любой способ записи, но наиболее удобным, с точки зрения синтаксиса и читаемости запроса, я считаю способ с указанием имени таблицы после оператора SELECT.
Так все-таки какой смысл в этой звездочке вместо перечисления колонок?
SELECT * выведет информацию о всех колонках в заданной таблице, и это можно использовать, чтобы посмотреть, какие именно колонки присутствуют и как они называются.
Мы можем использовать форму записи с именем таблицы в фильтре WHERE?
Да, и вот пример. SELECT * FROM MAN WHERE MAN.FIRSTNAME= «Олег».