Как посмотреть содержимое таблицы sql
Команды MySQL
Консоль MySQL позволяет вводить как инструкции SQL, так и служебные команды MySQL, предназначеные для администрирования и использования таблиц в базах данных MySQL. К основным командам относятся SHOW, USE и CREATE.
Рассмотрим каждую из них отдельно.
Эта команда предназначена для просмотра доступных баз данных и таблиц в конкретных базах данных. Для просмотра списка баз данных необходимо ввести такую команду:
Если, например, существуют две базы данных — mysql и test (эти две базы как правило создаются автоматически при инсталляции сервера), то MySQL ответит примерно так:
Для просмотра списка таблиц используется эта же команда в таком виде:
Эта команда выдаст список таблиц в текущей базе данных:
Замечание: вы можете работать только с одной базой данных в одно и то же время, поэтому в приведенном выше примере нет нужды указывать название базы данных, список таблиц которой стоит вывести, поскольку производится поиск в активной на данный момент базе.
CREATE
Эта команда позволяет создавать новые базы данных. Как было сказано выше, по умолчанию сервер создает две базы данных — mysql и test. Для удобства стоит создавать новую базу данных для каждой отдельной задачи, потому что легче работать с набором таблиц, которые связаны между собой (даже если эта связь только смысловая). Создадим новую базу данных при помощи этой команды:
После этой операции будет создана новая база данных не содержащая никаких таблиц, а команда SHOW DATABASES выдаст следующее:
Как уже было сказано выше, в один и тот же момент только одна база данных может быть активна. Команда USE служит для выбора этой активной базы. Для перехода к некоторой базе данных необходимо выполнить следующую операцию:
Стоит отметить, что при создании новой базы данных (см. выше), новая база не становится активной автоматически — для ее использования необходимо сделать это самостоятельно.
Нижеследующее ознакомит вас с методами извлечения и занесения данных в таблицы при помощи языка SQL.
Наипростейшей командой является следующая:
Эта команда подразумевает, что в активной базе данных существует таблица mysql, из которой она просто извлекает все данные и выводит их на экран.
Замечание: На SQL-команды распространяется одно ограничение, которое не имеет отношения к командам MySQL — инструкции SQL обязательно должны заканчиваться точкой с запятой. Это позволяет вводит многострочные запросы к бызе данных, что не требуется для MySQL-команд, которые как правило лаконичные и короткие.
Как вы уже наверное поняли, команда SELECT служит для просмотра данных таблиц. Ее упрощенный синтаксис таков:
В списке поля может быть как один элемент, так и несколько; кроме того возможно указание символа «*» (), который говорит, что следует показать все поля таблицы.
Часть WHERE … является необязательной и позволяет выбрать из таблицы строки, удовлетворяющие определенному(ым) условию(ям). Раздел ORDER BY … служит для сортировки полученных данных по определенным полям.
Вот пример более сложного запроса, демонстрирующий сказанное выше. Допустим таблица staff содержит информацию о сотрудниках некоторой организации. Этот запрос находит записи о тех из них, кто работает больше двух лет и кого не зовут Иваном.
Рассмотрим этот запрос
Первая строка велит MySQL показать содержимое только полей name, project и works_since. Вторая строка указывает на таблицу, в которой следует искать эти данные. Оставшаяся часть запроса указывает критерии выбора — имя не должно быть ‘Иван’, а дата быть более ранней, чем 26-е апреля 1998-го года. Вот пример вывода после такой операции:
Для показа данных одного поля может использоваться такой запрос:
Как видите, этот запрос просто выбирает значения из нужного поля из каждой строки и выводит их, заодно сортируя по (единственному) полю project, поэтому в результатах встречаются повторения. Для устранения их используется инструкция DISTINCT:
SQL позволяет производить некоторые вычисления и получать некоторую описательную информацию при помощи агрегатных функций. Среди этих функций — COUNT, SUM, MAX, MIN и AVG:
Используются эти функции как элементы списка таблиц в запросе с аргументом — названием поля. Вот несколько примеров.
Эти запросы находят количество выполняемых проектов, наибольшее количество проектов, выполняемое одним человеком и среднее количество проектов, в которых участвуют работники соответственно.
SQL также располагает средствами работы с регулярными выражениями (работе с которыми в Perl вы можете ознакомиться, прочтя соответствующую статью на нашем сайте).
Для сравнения значения с регулярным выражением используется оператор LIKE, а для конструирования простеших выражений — символы ‘_’ (произвольный символ) и ‘%’ (произвольное количество произвольных символов). Пример. Этот запрос находит все имена, которые начинаются с ‘Jo’:
MySQL также позволяет производить более развитое сравнение с шаблоном при помощи оператора REGEXP и средств построения шаблона теми же методами, что используются в Perl (см. Регулярные выражения в Perl).
Этот запрос выведет все строки, в которых название проекта содержит букву ‘b’ вне зависимости от регистра.
И последнее по порядку, но не по значению — использование более чем одной таблицы. Особенность заключается в том, что используемые таблицы могут иметь общие поля, которыми они связаны.
Для того, чтобы точно указывать, о поле какой таблицы идет речь, используется запись типа staff.project, где перед точкой стоит название таблицы, а после нее — название поля. Второй вариант — назначения псевдонимов (алиасов) таблицам для большего удобства. Для этого в списке таблиц название каждой таблицы указывается вместе с псевдонимом — например stuff x, projects y.
В этом примере объединяются таблицы staff и projects, причем выводятся имя сотрудника, проект над которым он работает и описание этого проекта.
Объединив все это в один запрос получим следующее:
Редактирование данных
Редактирование данных — это добавление, удаление и изменение их. Для выполнения этих операций используются команды INSERT, DELETE и UPDATE соответственно.
Команда INSERT служит для вставки строк в таблицы. Вот как может выглядеть такой запрос:
Возможна также вставка отдельных значений. В таком случае необходимо указать, в какие поля стоит вставлять данные, причем оставшиеся поля будут незаполнены — при выполнении запросов SELECT они будут представлены как NULL — специальное начение, означающее, что данное отсутствует.
Удаление данных производится командой DELETE. Для этого нужно указать таблицу и (необязательно) условия, которым должны удовлетворять строки, которые следует удалить. Если условия опущены, эта команда, как и SELECT, проделает эту операцию надо всеми строками — то есть очистит таблицу.
Изменение данных производится при помощи команды UPDATE. Необходимо указать, значения каких полей следует изменить, а также (опять же необязательно) условия, которым должны удовлетворять строки, которые следует обновить.
Этот запрос устанавливает дату принятия на работу, зарплату и название проекта всем Джекам, которые находятся в базе данных.
Это небольшая часть языка SQL, необходимая для работы с MySQL, в частности при программировании для Web. Для более полной информации обратитесь к официальным спецификациям SQL или к документации MySQL.
Примечание для тех, кто знаком со стандартом ANSI SQL 92: на данный момент MySQL поддерживает укороченную версию этого стандарта, в которую не входит выполнения подзапросов а также некоторые другие функции.
MySQL/MariaDB: наиболее используемые команды, примеры
Ниже предоставлен список наиболее полезных и часто используемых команд MySQL с примерами.
Это перевод статьи отсюда>>>, с некоторыми незначительными изменениями и дополнениями.
mysql> в начале строки означает, что команда выполняется из MySQL-клиента.
UPD 03.03.2019 Пост изначально был размещён в 2012-ом году, и стал самым читаемым в блоге – 198737 просмотров на данный момент. Сегодня его немного обновил – изменил форматирование текста команд, и разбил всё на разделы для простоты навигации по примерам.
Общие команды
Что бы проверить статус сервера MYSQL выполните:
Что бы подключиться к серверу MySQL из консоли, если сервер MySQL находится на том же хосте:
Что бы подключиться к серверу MySQL из консоли, если сервер MySQL находится на удаленном хосте db1.example.com :
Работа с базами и таблицами
Работа с базами
Создать базу данных на MySQL сервере:
Показать список всех баз данных на сервере MySQL:
Переключиться для работы с определенной базой данных:
Работа с таблицами
Отобразить все таблицы в базе данных:
Просмотреть формат таблицы в базе:
Показать все содержимое таблицы:
Отобразить количество строк в таблице:
Подсчитать количество колонок в таблице:
Удаление строки в таблице:
Удаление столбца из таблицы:
Удалить таблицу из базы:
Работа с колонками
Добавить колонку в таблицу:
Изменение имени колонки:
Создать колонку с уникальным именем, что бы избежать дубликатов в названиях:
Изменение размера колонки:
Выборка данных
Показать все содержимое таблицы:
Отобразить колонки и их содержимое в выбранной таблице:
Отобразить строки в определенной таблице, содержащие “ whatever“ :
Отобразить все записи в определенной таблице, содержащие “ Bob ” и телефонный номер “ 3444444 :
Отобразить все записи, НЕ содержащие имя “ Bob ” и телефонный номер “ 3444444 “, отсортированные по полю phone_number :
Показать все записи, начинающиеся с букв ‘ bob ” и телефонного номера “ 3444444 ” в определенной таблице:
Показать все записи, начинающиеся с букв ‘ bob ” и телефонного номера “ 3444444 “, ограничиваясь записями с 1-ой до 5-ой:
Показать все уникальные записи:
Отобразить выбранные записи, отсортированные по возрастанию ( asc ) или убыванию ( desc ):
Регулярные выражения
Использование регулярных выражений ( “REGEXP BINARY” ) для поиска записей. Например, для регистро-независимого поиска – найти все записи, начинающиеся с буквы А :
Импорт и экспорт данных в/из файла
Загрузка файла CSV в таблицу:
Пользователи, пароли сервера MySQL:добавление, изменение пользователей и паролей
Изменений пользовательского пароля из консоли на удаленном хосте db1.example.org :
Подробнее о восстановлении пароля root для MySQL написано тут>>>.
Просмотр и редактирование таблиц SQL Server в графическом режиме
Иногда бывает необходимо произвести некоторые элементарные действия с базой данных, например найти некое значение и\или изменить его. Для тех, кто постоянно работает с базами и владеет языком запросов, эта задача не составит труда, но если вы видите SQL Server в первый раз, то проще всего просмотреть и отредактировать данные в графическом режиме.
Для этого надо открыть SQL Server Management Studio, найти в разделе «Databases» нужную базу и раскрыть ее. Затем в разделе «Tables» выбрать таблицу и правой клавишей мыши вызвать контекстное меню. В этом меню есть два пункта — «Select Top 1000 Rows» и «Edit Top 200 Rows».
Select Top 1000 Rows, как следует из названия, выводит первые 1000 строк таблицы
а Edit Top 200 Rows открывает для редактирования первые 200 строк таблицы. Это очень удобно, так как таблицу можно быстро пролистать, найти требуемую информацию и изменить ее.
При необходимости дефолтные значения 200\1000 можно изменить. Для этого надо открыть меню «Tools», перейти к пункту «Options»
открыть вкладку «SQL Server Object Explorer» и в разделе «Table and View Options» установить необходимые значения. А если поставить 0, то будет выводиться все содержимое базы без ограничений.
Все вышеописаное применимо ко всем более-менее актуальным версиям, начиная с SQL Server 2008 и заканчивая SQL Server 2016.
Руководство. просмотреть и изменить данные в таблице
Теперь можно просматривать, изменять и удалять данные в существующей таблице с помощью визуального редактора данных.
В следующих процедурах используются сущности, созданные ранее с помощью руководства по разработке подключенной базы данных.
Визуальное редактирование данных в таблице с помощью редактора данных
Щелкните правой кнопкой мыши таблицу Products в обозревателе объектов SQL Server и выберите Просмотреть данных.
Запустится редактор данных. Обратите внимание на строки, которые мы добавили в таблицу в предыдущих процедурах.
Щелкните правой кнопкой мыши таблицу Fruits в обозревателе объектов SQL Server и выберите Просмотреть данные.
В редакторе данных введите 1 в поле Id и True в поле Perishable, а затем нажмите клавишу ВВОД или TAB, чтобы убрать фокус с новой строки и выполнить фиксацию в базу данных.
Повторите описанный выше шаг: введите в таблицу значения 2, False и 3, False.
Обратите внимание, что при изменении строки их всегда можно вернуть с помощью клавиши ESC.
Чтобы просмотреть изменения в виде скрипта, нажмите кнопку Скрипт на панели инструментов. Кроме того, можно сохранить изменения в SQL-файле скрипта для последующего использования, нажав кнопку Вывести скрипт в файл.
SELECT, SELECT DISTINCT. Вывод данных из таблиц в MySQL
Команда SELECT
SELECT используется для создания выборок из базы данных MySQL.
С помощью SELECT можно:
Синтаксис запроса вывода данных из таблицы
Вывод данных таблицы в терминале
Пример вывода данных колонок id, title, author, price, amount из таблицы books.
mysql> USE Bookstore;
Database changed
mysql> SELECT id, title, author, price, amount FROM books;
+—-+—————————+———————+———+———+
| id | title | author | price | amount |
+—-+—————————+———————+———+———+
| 1 | Дубровский (Акция) | Александр Пушкин | 230.00 | 20 |
| 2 | Нос (Акция) | Николай Гоголь | 255.20 | 7 |
| 3 | Мастер и Маргарита | Михаил Булгаков | 263.00 | 8 |
| 4 | Мёртвые души (Акция) | Николай Гоголь | 173.00 | 3 |
| 5 | Преступление и наказание | Фёдор Достоевский | 245.00 | 3 |
| 6 | Война и мир | Лев Толстой | 341.00 | 1 |
| 7 | Анна Каренина | Лев Толстой | 346.00 | 0 |
| 8 | Отцы и дети | Иван Тургенев | 371.00 | 3 |
| 9 | Собачье сердце | Михаил Булгаков | 232.00 | 10 |
| 10 | Бесы | Фёдор Достоевский | 212.00 | 8 |
+—-+—————————+———————+———+———+
10 rows in set (0.00 sec)
Запрос для вывода данных всех колонок из таблицы books, будет выглядеть так.
Вывод данных можно также организовать не только в виде таблицы, но и в виде списка, просто добавьте флаг \G после имени таблицы.
mysql> SELECT * FROM books \G;
*************************** 1. row ***************************
id: 1
title: Дубровский (Акция)
author: Александр Пушкин
genre: Драма,Повесть
price: 230.00
discount: 15
edition: 1
isbn: 841-6-817-134484-1
page_num: 120
publish_year: 1855
creation_date: 2019-01-28 15:17:12
amount: 20
shelf_position: f4a322ccca
Вывод данных из нескольких таблиц
Если у вас есть несколько связанных таблиц, то с помощью SELECT вы можете выводить их данные составляя из них одну таблицу.
Выведем колонки id, book_id и status для таблицы orders.
Выведем колонки title, author, price из таблицы books и колонку status из таблицы orders.
mysql> SELECT title, author, price, status FROM books, orders WHERE books.id=book_id;
+———————+——————-+———+——————+
| title | author | price | status |
+———————+——————-+———+——————+
| Мастер и Маргарита | Михаил Булгаков | 263.00 | Новый |
| Дубровский (Акция) | Александр Пушкин | 230.00 | Обрабатывается |
+———————+——————-+———+——————+
2 rows in set (0.00 sec)
Вывести колонки с одинаковыми именами, например id, в данном случае не получится, т.к. они имеются в обоих таблицах.