Ответ на #вопрос11
Учитывая, что
name score
Alex 5
Sam 1
Sam 11
NULL 4
NULL 3
Тогда запрос
name sc
Alex 5
Sam 12
NULL 7
#вопросы #собеседование
Учитывая, что
NULL в SQL — просто отсутствие значения, то все значения NULL при группировке попадают в одну группу. Например, пусть есть таблица:name score
Alex 5
Sam 1
Sam 11
NULL 4
NULL 3
Тогда запрос
SELECT name, SUM (score) AS scвыдаст:
FROM table
GROUP BY name;
name sc
Alex 5
Sam 12
NULL 7
#вопросы #собеседование
👍1
Tips & Tricks. Работа со столбцами AUTO_INCREMENT в MySQL
В этой статье мы расскажем, для чего используется AUTO_INCREMENT и как им управлять.
#sql
Читать статью
В этой статье мы расскажем, для чего используется AUTO_INCREMENT и как им управлять.
#sql
Читать статью
Telegraph
Работа со столбцами AUTO_INCREMENT в MySQL
Автоинкремент позволяет автоматически генерировать уникальный номер каждый раз, когда в таблицу добавляется новая запись. Эта функция особенно полезна для поля первичного ключа, чтобы ключ автоматически устанавливался при каждом добавлении новой записи. Хотя…
Сколько записей вернет следующий PostgreSQL запрос:
VALUES (11), (22), (33) INTERSECT VALUES (55), (33), (33);
VALUES (11), (22), (33) INTERSECT VALUES (55), (33), (33);
Anonymous Quiz
34%
1
23%
2
21%
3
6%
Ничего из перечисленного
17%
Посмотреть ответы
#вопрос12
Таблица
Таблица
employee имеет две колонки: emp_name и emp_id. Какой результат возвратит следующий SQL запрос:SELECT emp_name FROM employee ORDER BY 2 DESC;#вопросы #собеседование
Ответ на #вопрос12
В запросе выше, даже с учетом того, что таблица
#вопросы #собеседование
ORDER BY 2 сработает только в том случае, когда в SELECT указаны по крайней мере две колонки. В запросе выше, даже с учетом того, что таблица
employee содержит 2 колонки, выбирается только 1 колонка. Поэтому такой запрос будет выдавать ошибку. #вопросы #собеседование
Как получить значение текущего года в PostgreSQL?
Anonymous Quiz
6%
SELECT NOW();
42%
SELECT YEAR (NOW());
31%
SELECT DATE_PART ('year', NOW());
13%
SELECT YEAR FROM DATE;
9%
Посмотреть ответы
#вопрос13
Есть две таблицы как на картинке выше:
Есть две таблицы как на картинке выше:
envelope и docs. Расскажите, какой результат возвратит следующий MySQL запрос и обоснуйте свой ответ:UPDATE docs INNER JOIN envelope ON envelope.id = docs.idnum#вопросы #собеседование
SET docs.doctext = docs.pageseq
WHERE EXISTS (
SELECT 1 FROM envelope
WHERE id = envelope.id
);
SELECT * FROM docs;
Ответ на #вопрос13
Результат будет выглядеть так:
idnum pageseq doctext
1 5 5
2 6 6
NULL 0 NULL
Оператор
#вопросы #собеседование
Результат будет выглядеть так:
idnum pageseq doctext
1 5 5
2 6 6
NULL 0 NULL
Оператор
EXISTS – это отвлекающий маневр. Тут всегда будет true, т. к. id не является членом таблицы envelope. Таким образом, id будет сравнивать себя с самим собой.#вопросы #собеседование
Статья дня. Как работать с json в Postgresql?
json — самый популярный, на данный момент, формат сериализации данных, состоящий из пар ключ-значение. Является нативным для Javascript и поддерживается абсолютно всеми языками программирования.
PostgreSQL нативно поддерживает json с версии 9.2. И до этого у постгри был тип данных для пар ключ-значение, но не настолько гибкий и с куда менее полным функционалом. Сейчас это мощнейший и удобнейший инструмент.
#sql
Читать статью
json — самый популярный, на данный момент, формат сериализации данных, состоящий из пар ключ-значение. Является нативным для Javascript и поддерживается абсолютно всеми языками программирования.
PostgreSQL нативно поддерживает json с версии 9.2. И до этого у постгри был тип данных для пар ключ-значение, но не настолько гибкий и с куда менее полным функционалом. Сейчас это мощнейший и удобнейший инструмент.
#sql
Читать статью
Telegraph
Как работать с json в Postgresql?
PostgreSQL — одна из наиболее универсальных баз данных. Если нет каких-то специфических требований, то лучше использовать именно её. Какое-то время назад, на волнах хайпа, MongoDB стремительно вырывалась вперёд, но уже много лет и PostgreSQL отлично умеет…
Трюк дня. Как сделать Case Sensitive сравнение в MySQL
Есть таблица
И в столбце
• sPg
• SPG
• spg
Напишите MySQL-запрос, который выберет только значения = ‘SPG‘.
Решение будет вечером.
#tips
Есть таблица
enterprise, созданная следующим MySQL запросом:CREATE TABLE enterprise (company TEXT); И в столбце
company содержатся следующие значения:• sPg
• SPG
• spg
Напишите MySQL-запрос, который выберет только значения = ‘SPG‘.
Решение будет вечером.
#tips
Трюк дня. Как сделать Case Sensitive сравнение в MySQL. Решение
Небинарные строки (CHAR, VARCHAR, TEXT) в MySQL по умолчанию не чувствительны к регистру. Поэтому запрос
Для вывода только одной записи с ‘SPG’ существуют следующие решения:
1. Приведение столбца к типу
2. Выбор чувствительного к регистру набора символов с помощью
Детальную документацию смотрите здесь.
#tips
Небинарные строки (CHAR, VARCHAR, TEXT) в MySQL по умолчанию не чувствительны к регистру. Поэтому запрос
SELECT * FROM enterprise WHERE company = ‘SPG‘ выведет все три строки. Для вывода только одной записи с ‘SPG’ существуют следующие решения:
1. Приведение столбца к типу
BINARY (т.к. тип BINARY чувствителен к регистру): SELECT * FROM enterprise WHERE BINARY company = ‘SPG‘;
2. Выбор чувствительного к регистру набора символов с помощью
COLLATE:SELECT * FROM enterprise WHERE company COLLATE utf8mb4_0900_as_cs = ‘SPG‘;Детальную документацию смотрите здесь.
#tips
Есть таблица EMPLOYEES (code, first_name, last_name, department_id);
Какой из следующих запросов отобразит всех работников, у которых вторая буква в имени - ‘i‘?
Какой из следующих запросов отобразит всех работников, у которых вторая буква в имени - ‘i‘?
Anonymous Quiz
71%
SELECT first_name FROM employees WHERE first_name LIKE ‘_i%‘;
7%
SELECT first_name FROM employees WHERE first_name LIKE ‘%i_‘;
13%
SELECT first_name FROM employees WHERE first_name LIKE ‘%i%‘;
6%
SELECT first_name FROM employees WHERE first_name LIKE ‘_i_‘;
3%
Посмотреть ответы
#вопрос14
Что выведет приведенный запрос, если в таблице
Что выведет приведенный запрос, если в таблице
employee 10 записей?BEGIN;#вопросы #собеседование
TRUNCATE TABLE employee;
ROLLBACK;
SELECT * FROM employee;
Ответ на #вопрос14
Этот запрос вернет 10 записей, т. к.
#вопросы #собеседование
Этот запрос вернет 10 записей, т. к.
TRUNCATE выполняется в транзакции.#вопросы #собеседование
Трюк дня. MySQL LIKE IN()
Напишите запрос, который выберет из таблицы
Запрос должен быть короче, чем следующий запрос:
Решение будет вечером.
#tips
Напишите запрос, который выберет из таблицы
user все значения id, содержащие в себе 114, 23 и 868. Запрос должен быть короче, чем следующий запрос:
SELECT * FROM user t
WHERE t.id LIKE '%114%'
OR t.id LIKE '%23%'OR t.id LIKE '%868%';Решение будет вечером.
#tips
Какие SQL-операции относятся к командам DDL?
Anonymous Quiz
52%
DROP, ALTER
16%
SELECT, CREATE
4%
ALERT, SELECT
12%
UPDATE, MERGE
17%
Посмотреть ответы