SQL Flashcards

(52 cards)

1
Q

Какие три фундаментальные концепции SELECT?

A

PROJECTION - выбор столбцов из таблицы
SELECTION - выбор строк из таблицы
JOINING - объединение таблиц

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Каков базовый синтаксис SELECT?

Чтобы получить целиком таблицу?

A

select * from table, где * - все колонки, а table - название таблицы.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Как на клавиатуре запустить запрос?

A

CTRL + Enter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Как получить определенный столбец таблицы?

Что, если нужно несколько столбцов?

A

Select название_столбца FROM название_таблицы;

через запятую;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Как извлечь столбец так, чтобы в нем не было повторений?

Что, если указать несколько столбцов?

A

select distinct имя_столбца from название_таблицы;

будет работать на два столбца.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Что такое alias и как что делает?

A

Псевдонимы. После названия столбца можно написать слово и поменяется его название.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Как работать с текстом и с одинарными кавычками?

A

q’ ‘

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Как выглядит первый шаблон SELECT?

A

SELECT * (или) (DISTINCT column(s) alias, expression(s) alias) FROM table;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Как вывести зарплату из таблицы EMPLOYEES в промежутке от 4000 до 5000.

A

SELECT salary FROM employees where salary between 4000 and 5000;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Как оформляется любая дата?

A

в одинарных кавычках.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Как вывести имена людей от А до Б?

A

SELECT names FROM employees WHERE names between ‘A’ and ‘B’;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Как сделать запрос, где нужно вывести строки с конкретными значениями чего-то. (1000, 1500, 2000);

A

(стандарт) WHERE salary IN (1000, 1500,2000);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Как узнать тип столбика?

A

desc имя_таблицы;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Как найти только те строки, у которых поле определенного столбика NULL?

A

(стандарт )where имя_столбика IS NULL;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Как найти строки, начинающиеся на S и имеющие за собой сколько угодно символов?

Заканчивающиеся на S, неважно, сколько символов перед S?

A

(standart) where имя_столбика LIKE ‘S%’;

(standart) where имя_столбика LIKE ‘%S’;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Какие два специальных символа есть у LIKE?

A

% - сколько угодно символов

_ - один символ;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Как у специального символа ‘_’ LIKE забрать его специальность?

A

(стандарт) where имя LIKE ‘_’ ESCAPE ‘' ;

т.е. мы ставить слэш перед сиволом и после в escape вписываем этот слэш.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Как отсортировать по возрастанию, убыванию?

A

ORDER BY имя_по_чему_сортируем ASC;

или DESC

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

На что можно подразделить функции в SQL? Какое отличие?

A

На single-row - один вход, один выход

multiple-row много входов - один выход;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Как вывести first_name в нормальном виде и рядом в столбце с маленькой буквы.

A

select first_name, LOWER(first_name) from employees;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Как вывести текст с помощью таблицы DUAL в нижнем регистре?

A

select LOWER(‘ПРиВеТ’) from DUAL;

22
Q

Как выглядит знак конкатенации в SQL?

A

|| (две палки)

23
Q

Мы ищем имя, не зная регистр. Как сделать запрос?

A

select * from employees WHERE LOWER(first_name) = ‘david’ ;

24
Q

Мы знаем, что имя оканчивается на ‘en’, как найти его?

A

select * from employees WHERE LOWER(first_name) like ‘%en’ ;

25
Какая противоположность функции LOWER(s)
UPPER(s)
26
Как выглядит команда, печатающая значения первая большая буква, остальные маленькие?
SELECT INITCAP (first_name)FROM EMPLOYEES ;
27
Какая функция выводит сегодняшнюю дату?
select SYSDATE from dual;
28
Какая особенность есть у функции CONCAT(S,S);
Конвертирует числа и даты в строку S
29
Как вывести имена и длину этих имён в два столбика?
select first_name, LENGTH(first_name) from employees;
30
Как взять строку и прибавить к ней определенное количество раз любой символ?
select LPAD(‘zaur’, 7, ‘#’) from dual; Вывод: ###zaur RPAD
31
Сколько параметров принимает INSTR()? Сколько из них обязательных?
(s, search string, start position, Nth occurrence) Первые два обязательные.
32
Как ‘срезать’ кусок со строки? Какой базовый синтаксис? Как убрать кусок перед словом? После слова? С обеих сторон слова?
``` select TRIM( leading ‘*’ from ‘****zaur***’) from dual; Вывод: zaur*** leading Trailing Both ```
33
С помощью какой функции можно найти позицию одного значения в другом значении?
instr(s, искомое s)
34
Что означают все параметры INSTR()?
(s, искомое s, место откуда начинаем поиск, какое по счету появление ищем)
35
Как вернуть из текста S кусок с места START POSITION? И чтобы вывелось определенное количество символов?
subst(s, start position, определенное количество); последний опционально.
36
Какая функция меняет в строке S ЗАМЕНЯЕМЫЙ_КУСОК на ЗАМЕНЯЮЩИЙ_КУСОК
REPLACE (S, заменяемый кусок, заменяющий кусок); символы в одинарные кавычки*
37
Сколько обязательных параметров у replace?
(s, заменяемый_кусок)
38
Что делает функция REPLACE() без третьего параметра?
удаляет выбранные символы.
39
Какая функция округляет число? Сколько параметров и сколько из них обязательны?
Round (n, точность_округления); первый обязательный
40
Как работает второй параметр функции round()
второй параметр - число цифр после запятой, которые будут округлены.
41
Как отсечь дробную часть числа? Не округлить, а именно срезать?
trunc (n, точность);
42
Как найти остаток от деления?
MOD (делимое, делитель);
43
Какая функция считает количество месяцев?
MONTHS_BETWEEN(start_date, end_date);
44
Какой шаблон для перевода в текст?
to_char(number, mask, nls_parameters) = T;
45
По какому принципу работают маски в to_char()?
to_char(18, '099,99') => 018,00 to_char(18, '00099,999') => 00018,000 to_char(-18, 'S99,99') => -18,00
46
Что делает функция NVL(x1,x2);
если x1 не NULL - возвращает x1, если x1 - NULL, возвращает x2;
47
Как вывести 0 вместо NULL у столбца коммиссии?
select NVL(commission_pct, 0) from employees;
48
Синтаксис и как работает функция NVL2?
NVL2(value, ifnotnull, ifnull); если value null, возвращает ifnull, если не null, возвращает ifnotnull;
49
Что делает NULLIF(x1,x2)
Возвращает null если x1 и x2 равны между собой. возвращает x1 если не равны
50
Что делает COALESCE(x1,x2,x3 ... xN)?
Возвращает первое неNULL значение.
51
два типа функции CASE&
simple | searched
52
Как работает Simple case?
CASE 3*4 | WHEN 12 THEN