По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Потренируйтесь в ответах на популярные вопросы по SQL на собеседованиях. В данной статье приведен список типовых вопросов по SQL, с которыми можно столкнуться на настоящем собеседовании, и даны ответы. Чтобы получить максимум из прочитанного, постарайтесь сначала отвечать на вопросы самостоятельно. Удачи! 1. Что такое SQL? SQL расшифровывается как Structured Query Language – язык структурированных запросов. Это язык программирования для взаимодействия с данными, которые хранятся в системе управления реляционными базами данных. Синтаксис SQL схож с английским языком, поэтому его легко читать, писать и интерпретировать. Он позволяет вам писать запросы, определяющие подмножество данных, которые вы ищите. Эти запросы можно сохранять, уточнять, обмениваться ими и запускать в различных базах данных. 2. Что такое база данных? База данных (БД) – это набор данных, хранимых на компьютере. При этом сами данные структурированы таким образом, что их можно было легко получить. 3. Что такое реляционная база данных? Реляционная база данных – это разновидность базы данных. В ней используется структура, которая позволяет нам идентифицировать и обращаться к данным в привязке к другим частям данных из БД. Данные в реляционной БД часто организованы в виде таблиц. 4. Что такое РСУБД? Система управления реляционными базами данных (РСУБД) – это программа, позволяющая вам создавать, обновлять и администрировать реляционную базу данных. Для доступа к базам данных большинство РСУБД использует язык SQL. Самой популярной РСУБД считается MySQL. К другим системам относятся PostgreSQL, Oracle DB, SQL Server и SQLite. 5. Что такое таблица? Таблица – это набор данных, распределенных по строкам и столбцам. Иногда их называют «связями». В таблицах могут быть сотни, тысячи и иногда даже миллионы строк данных. 6. Что такое строка и столбец в таблице? Строка – это одна запись данных в таблице. Столбец – это набор значений данных определенного типа. 7. Что такое тип данных? Тип данных – это атрибут, который определяет тип данных в столбце. В каждом столбце БД есть тип данных. Несколько часто используемых типов данных: INTEGER, TEXT, DATE, REAL. 8. Что такое первичный и внешний ключ? Первичный ключ (primary key) – это столбец, который однозначно определяет каждую строку в таблице. Первичные ключи должны соответствовать следующим требованиям: ни одно значение не может быть пустым (NULL), каждое значение должно быть уникальным и в таблице не может быть более одного столбца с первичным ключом. Например, в таблице customers первичным ключом будет customer_id. Внешний ключ (foreign key) – это первичный ключ для одной таблицы, который присутствует и в другой таблице. Например, есть дополнительная таблица orders. В каждом заказе может храниться информация о клиенте. Поэтому внешним ключом будет столбец customer_id. 9. В чем отличие ALTER от UPDATE? Оператор ALTER используется для добавления нового столбца в таблицу. Он изменяет структуру таблицы. Оператор UPDATE используется для редактирования строки в таблице. Он изменяет существующие записи в таблице. 10. Что такое запрос? Запрос (query) – это оператор SQL для получения информации, хранимой в базе данных. Запросы позволяют нам «общаться» с базой данных, задавая вопросы и возвращая результирующий набор подходящих данных. 11. Что такое подзапрос? Подзапрос (subquery) – это внутренний запрос, вложенный во внешний. Запросы можно вложить через операторы SELECT, INSERT, UPDATE или DELETE. Если есть подзапрос, то он будет выполняться до запуска внешнего оператора. 12. Что такое ограничения? Ограничения (constraints) – это набор правил, через которых базе данных сообщается об ограничении типа данных, хранимых в столбцах. Они предписывают базе данных отклонять введенные данные, если они не соответствуют ограничению. Ограничения добавляют информацию о том, как может использоваться столбец, и вызываются после типа данных для столбца. Несколько примеров ограничений: PRIMARY KEY: однозначно определяет каждую строку и требует уникальности каждого значения. UNIQUE: каждое значение в столбце должно отличаться. NOT NULL: в столбцах обязательно должны быть значения. DEFAULT: дополнительный аргумент, который подставляется в качестве предполагаемого значения для каждой новой строки, если в ней не указано значение для этого столбца. 13. Что такое оператор? Оператор (statement) – это текст, который база данных распознает как допустимую команду. Операторами можно пользоваться для выполнения таких задач, как изменение структуры таблицы, обновление данных или извлечение данных из БД. Структура операторов может варьировать, но каждый из них должен заканчиваться точкой с запятой (;). Количество строк в операторе неважно. Оператор можно записать в одну строку или разделить на несколько (для лучшей читабельности). 14. Как вы проверите, есть ли в поле значение или нет? Если в поле отсутствует значение, оно обозначается как NULL. Чтобы проверить поля на пустые значения, можно прописать в качестве условия IS NULL: WHERE [столбец] IS NULL. Чтобы найти поля со значением, добавьте в условие IS NOT NULL: WHERE [столбец] IS NOT NULL. 15. Чем отличаются DISTINCT и UNIQUE? DISTINCT – это ключевое слово, которым мы пользуемся, если хотим вернуть уникальные значения на выводе. Оно отсеивает все повторяющиеся значения в конкретном столбце. UNIQUE – это ограничение, которым пользуются, чтобы все значения столбца отличались. Оно похоже на PRIMARY KEY, с той лишь разницей, что в таблице может быть множество разных столбцов с UNIQUE. 16. Для чего используются агрегатные функции? Агрегатные функции используются для выполнения вычислений на одном или нескольких значениях и возвращают одиночное значение с осмысленной информацией. Несколько примеров агрегатных функций: COUNT(), SUM(), MAX(), MIN(), AVG() и ROUND(). 17. Что такое соединение (JOIN)? JOIN – это способ объединения строк из двух и более таблиц посредством общего столбца. 18. В чем отличие INNER JOIN от LEFT JOIN? INNER JOIN используется для объединения строк из двух таблиц, которые соответствуют условию ON. В конечный результат не попадают строки, не соответствующие условию ON. LEFT JOIN сохраняет все строки из первой таблицы, вне зависимости от того, есть ли для них совпадающая по условию ON строка во второй таблице. 19. Для чего нужны оконные функции? Оконные функции (windows functions) нужны в случаях, когда вы хотите сохранить значения своей исходной таблицы и параллельно отобразить сгруппированную или суммарную информацию. Они похожи на агрегатные функции, но не сокращают количество строк в результате, а объединяют и группируют их в несколько результатов. 20. Что такое индексы и для чего они нужны? Индексы – это мощный инструмент, который используется в фоновом режиме БД для ускорения запросов и выступает в роли справочной таблицы для данных. Они нужны для эффективного хранения данных и быстрого их получения, что может быть критически важным для успеха крупных технологических компаний, которые обрабатывают петабайты данных каждый день.
img
Помимо обычной Windows, которая стоит почти на всех домашних компьютерах, есть версия с названием Windows Server, которая используется для серверов. О ней и поговорим. Windows Server - это целая линейка операционных систем, которые Microsoft специально создает для использования на серверах. Windows Server выпускается под этим названием с момента выпуска Windows Server 2003. Однако даже до этого были доступны серверные версии Windows, например, Windows NT 4.0 была доступна как для обычных домашних компьютеров, так и для серверов. Обычно каждый выпуск Windows Server соответствует обычной пользовательской версии Windows. Например, Windows Server 2003 - это серверная версия Windows XP, Windows Server 2016 основана на Windows 10 Anniversary Update, а Windows Server 2019, основана на версии Windows 10 версии 1809. С первого взгляда не поймешь, чем Windows Server отличается от обычных версий Windows - рабочий стол выглядит так же, есть значки и даже есть кнопка Пуск. Поскольку Windows Server и обычная версия имеют общую базу кода, многие вещи можно делать одинаково и там, и там, например, загружать и устанавливать программы, а многие основные функции включены в Windows Server. Однако в Windows Server не получится найти различные свистелки для пользователя - например Microsoft Store или браузер Edge. Скажем так - серверная версия Windows отлично подходит для корпоративных целей, когда компании нужно создать внутренний или внешний сервис, который будет решать конкретную бизнес задачу. Давайте теперь про основные различия: первое, что Windows Server включает в себя, это специальное корпоративное программное обеспечение, которое называется Enterprise Management Software С помощью него можно давать серверу различные роли, например: Роль Active Directory: это готовая роль, в которой сервер, сможет выступать как контроллер домена, и будет выполнять всю проверку подлинности учетных записей пользователей в компании. Роль DHCP и DNS Server: сервер может автоматически назначать IP-адреса всем устройствам в сети, и резолвить адреса. Быть файловым хранилищем: хранить важные файлы и устанавливать порядок доступа к ним. Службы печати: позволяет обеспечивать общий доступ к принтерам и сканнерам. Службы обновления Windows: можно направлять все обновления рабочей станции через этот сервер и настраивать определенные правила их работы. Веб сервер: позволяет поднимать на этом сервере сервисы, которые будут доступны для других пользователей через web-доступ. И это лишь малая часть возможных ролей в Windows Server. Очень часто кампании имеют больше одного сервера, и конечно же разделяют разные роли между ними. Еще одним важным отличие серверной Windows от пользовательской, это меньшее количество аппаратных ограничений. Например, Windows 10 позволяет юзерам устанавливать 2 ТБ оперативной памяти, что кажется и так очень много, но Windows Server предоставляет до 24 ТБ ОЗУ, потому что компаниям нужны большие мощности. Представь сервер, на котором крутятся десятки виртуальных машин! Конечно ему потребуется много оперативной памяти. А еще Windows Server может обрабатывать больше ядер и процессоров, так как имеет 64 сокета. Помнишь мы сказали, что Windows Server выглядит так же как обычный Windows? Да, но серверная Windows может вообще работать без графической оболочки! Windows Server можно установить двух формах - Server Core или Desktop Experience. Если вы отдадите предпочтение Windows Server Core без графического интерфейса, то будете наслаждаться управлением сервером через командную строку PowerShell, или сможете накатить инструмент с графическим интерфейсом, например RSAT (Remote Server Administration Tools) или Windows Admin Center. Не подумайте, это не мазохизм - это позволяет снизить нагрузку на сервер убрав “тяжелый” интерфейс. А еще многим администраторам, зачастую, удобнее работать с конмадной строке. Что выбрать под мой сервак, спросишь ты? Linux или Windows? Зависит от цели: Linux экономичнее и по деньгам, и по ресурсам, но если ты работаешь с инфраструктурой Microsoft, то тут нужно определенно выбирать Windows Server.
img
Не все любят управлять MySQL через Linux. Management Studio – говорили они. CLI – говорим мы. Бро, эта статья про то, как дать права доступа (permissions) учетным записям в Linux – среде. Логинимся Подключаемся к своему серверу по SSH. В командной строке вводим: mysql -u root -p Хоп – и мы уже в режиме управления MySQL: mysql> Вообще, эта статья про права доступа. Но на всякий случай вот тебе синтаксис команды, которая позволит создать нового пользователя с паролем в MySQL: CREATE USER 'логин'@'localhost' IDENTIFIED BY 'пароль'; А теперь права Друже, синтаксис команды, которая даст нужные тебе права крайне простой. Вот он: GRANT права ON база_данных.таблица TO 'логин'@'localhost'; Разберемся слева на право: права - могут быть следующие: ALL – дает полный доступ к базе данных. Кстати, если база данных не определена в команде, то даст полный доступ ко всему в MySQL (ох не надо так); CREATE – позволяет пользователю создавать базы данных и таблицы; DELETE – дает право пользователю удалять строки из таблиц; DROP – дает право удалять базы данных и таблица целиком (ну, так тоже не надо); EXECUTE – дает право пользователю выполнять хранимые процедуры; GRANT OPTION – с этой опцией юзер сможет давать права (или удалять) другим пользователям; INSERT – дает право хранить молчанию и все что он скажет будет.. Ладно, это просто право на добавление новых строк в таблицу; SELECT – самое распространенное право – парсить (извлекать) данные из SQL для чтения; SHOW DATABASES - этому пользователю можно будет смотреть на список баз данных; UPDATE – дает право пользователю изменять текущие строки в таблице; база_данных собственно, база данных, внутри которой живет ваша таблица; таблица - сама таблица. Табличка, table, le tableau; логин - имя пользователя вашего юзверя; Все просто. Пробежимся по примерам. Пример №1 Давайте дадим права юзеру example, с помощью которых он сможет создавать любые БД и таблицы: GRANT CREATE ON *.* TO 'example'@'localhost'; Использование звездочки (*) – это как маска, под которое попадает все. Пример №2 Дадим пользователю example права на удаление любых таблиц в заранее обозначенной базе данных, которая называется easybro GRANT DROP ON easybro.* TO 'example'@'localhost'; Как видишь, мы юзаем команду DROP. Кстати, лучшая практика после внесения изменения сделать небольшую перезагрузку прав командой: FLUSH PRIVILEGES; Как посмотреть права определенного пользователя в MySQL Посмотреть права очень просто. Опять же, на примере нашего юзера example: SHOW GRANTS FOR 'example'@'localhost';
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59