Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tests Baz dan new.doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
273 Кб
Скачать
☆

Id integer primary key,

FIRST_NAME VARCHAR(50) NOT NULL,

LAST_NAME VARCHAR(50) NOT NULL,

ADDRESS VARCHAR(100))

Какие запросы позволят добавить запись в эту таблицу?

[a] [+] INSERT INTO students(id, first_name, last_name) VALUES (1, 'Name', 'Surname');

[a] INSERT INTO students(id, first_name) VALUES (2, 'Name');

[a] INSERT INTO students VALUES (3, 'Name', null, NULL);

[a] INSERT INTO students VALUES (4, NULL, 'Surname', NULL);

[a] INSERT INTO students(id, first_name) VALUES (2, 'Name',NULL);

[q] 1:1: Сколько строк может быть удалено из таблицы с помощью валидного DELETE выражения (выберите наиболее точный вариант ответа)?

[a] 0

[a] 1

[a] [+] 0 и более

[a] 1 и более

[a] все строки

[q] 2:1: Отличаются ли в SQL операторы AND и &(амперсанд)?

[a] Приоритет AND выше, чем приоритет &

[a] Оператор & не поддерживается стандартом SQL

[a] [+] AND имеет более низкий приоритет по сравнению с &

[a] Между ними нет отличий

[a] Отличия зависят от СУБД где выполняется SQL команда

[q] 2:1: Укажите все запросы, которые эквивалентны следующему:

select * from numbers where textvalue = 'one'

[a] select * from numbers where textvalue like one

[a] select * from numbers where textvalue like 'one%'

[a] [+] select * from numbers where textvalue like 'one'

[a] select * from numbers where textvalue like '%one%'

[a] select * from numbers where textvalue like '%one'

[q] 3:1: В базе данных имеется таблица Employees, содержащая столбец AutoNum (строковый тип данных - гос.номер автомобиля сотрудника). В столбце AutoNum содержатся цифробуквенные значения, например 'A338МВ38'.

Вы хотите найти сотрудника, у которого две первые цифры номера (т.е 2-й и 3-й символы) равны '74'. Какое условие в запросе SELECT вы используете?

[a] [+] WHERE AutoNum LIKE ‘_74%’

[a] WHERE AutoNum [2,2] = ‘74’

[a] WHERE AutoNum LIKE ‘%74%’

[a] WHERE LEFT (AutoNum, 2,2) = ‘74’

[a] WHERE AutoNum LIKE ‘_74’

[q] 3:1: Дана пустая таблица, созданная с помощью выражения:

create table simple_tab (col1 varchar primary key);

Какие из перечисленных запросов отработают корректно:

[a] [+] insert into simple_tab ( col1 ) values ( 'bb' );

[a] insert into simple_tab values ( 'a\'a' );

[a] insert into simple_tab values ( null );

[a] insert simple_tab values ( 'aa' );

[a] insert into simple_tab values ( aa);

[q] 3:1: Дана пустая таблица publisher с колонками id и name. На id стоит автоинкремент, а name имеет тип varchar(40). Какие из следующих запросов корректно отработают:

[a] insert into publisher (name) values ('O’,’ Reilly');

[a] insert publisher (name) values ('O-Reilly');

[a] [+] insert into publisher (name) values ('OREILLY');

[a] insert into publisher (name) values ('O'Reilly');

[a] insert into publisher ('OReilly');

[q] 2:1: Дана таблица Persons:

+--------------+

| LastName|

+--------------+

С помощью какого запроса можно поместить значение 'Perez' в поле LastName таблицы Persons?

[a] [+] INSERT INTO Persons (LastName) VALUES ('Perez')

[a] INSERT INTO Persons ('Perez') INTO LastName

[a] INSERT INTO Persons VALUE ('Perez')

[a] INSERT ('Perez') INTO Persons (LastName)

[a] INSERT Persons VALUE ('Perez')

[q] 1:1: Даны следующие таблицы:

DOGS

Name Age

---------

Snoopy 4

Benny 2

CATS

Name Age

--------

Kleo 3

Linda 6

ANIMALS

Name Age

---------

- -

Name имеет тип char(10), а Age - number(10).

Выберите некорректный insert запрос

[a] [+] INSERT INTO ANIMALS (11, 'Kay');

[a] INSERT INTO ANIMALS (Age, Name) VALUES(1,'Pam');

[a] INSERT INTO ANIMALS VALUES (‘KLEO’, 3);

[a] INSERT INTO ANIMALS SELECT * FROM CATS;

[a] INSERT INTO ANIMALS (Age, Name) SELECT Age, Name FROM CATS;

[q] 3:1: Даны две таблицы: офисы (offices) и города (cities), в которых эти офисы расположены. Таблицы связаны по city_id. На текущий момент в таблицах есть следующие данные:

offices

|----------------------|

|office_id|name|city_id|

|----------------------|

| 1|of1 | 22|

| 2|of2 | 3|

| 3|of3 | 7|

|----------------------|

cities

|------------------|

|city_id| name |

|------------------|

| 3| Kiev |

| 22| Lviv |

| 25| Krigopol |

|------------------|

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

[a] [+] select offices.name, cities.name from offices right outer join cities on offices.city_id=cities.city_id;

[a] select offices.name, cities.name from offices cross join cities

[a] select offices.name, cities.name from offices full outer join cities on offices.city_id=cities.city_id;

[a] select offices.name, cities.name from offices inner join cities on offices.city_id=cities.city_id;

[a] select offices.name, cities.name from offices

[q] 2:1: Дана таблица Clients

+------+--------------+--------------+

| ID | Name | Summa |

+-----+--------------+--------------+

| 1 | Sasha |4000 |

| 2 | Marina | 2000 |

| 3 | Stepan | 0 |

| 4 | Klara | NULL |

+----+----------------+-------------+

После обновления таблицы:

UPDATE Clients SET Summa = Summa + 700

Какой будет результат выполнения запроса

SELECT AVG(Summa) FROM Clients;

[a] 2000

[a] [+] 2700

[a] 3000

[a] Запрос завершится ошибкой из-за присутствия NULL

[a] UNKNOWN

[q] 2:1: Какое ключевое слово используется для изменения объектов базы данных?

[a] CHANGE

[a] VARY

[a] MODIFY

[a] INTERCHANGE

[a] [+] ALTER

[q] 2:1: Дана таблица Persons:

+------+------------+-------+

| Id | FirstName | Age|

+------+------------+-------+

| 1 | Kate | 100 |

| 2 | Misha | 0 |

| 3 | Nick | NULL |

| 4 | Larisa | 200 |

+------+------------+-------+

Каков будет результат выполнения следующего запроса:

SELECT AVG (Age) FROM Persons

[a] 75

[a] Запрос не выполнится (завершится ошибкой), поскольку присутствует NULL

[a] UNKNOWN, поскольку присутствует NULL

[a] 150

[a] [+] 100

[q] 1:1: Имеется таблица Women

+-----+--------------+---------+

| Id | FirstName | Score |

+-----+--------------+--------+

| 1 | Angelina | 500 |

| 2 | Paris | 0 |

| 4 | Jennifer | NULL |

| 7 | Misha | 3000 |

+-----+---------------+-------+

Сколько строк вернет запрос

SELECT * FROM Women

WHERE Score >= ALL (SELECT Score

FROM Women

WHERE FirstName='Eva');

[a] Запрос содержит ошибку и не выполнится

[a] 0

[a] 1

[a] 3

[a] [+] 4

[q] 1:1: Ниже представлены 2 столбца таблицы Elements

+--------+------+

| Name| Year |

+--------+------+

| Au | NULL |

| Be | 1798 |

| Fr | 1939 |

| Uus | 2010 |

+--------+--------+

Сколько строк вернет запрос:

SELECT * FROM Elements

WHERE Year NOT IN (SELECT Year FROM Elements)

[a] Запрос содержит ошибку и не выполнится

[a] [+] 0

[a] 1

[a] 3

[a] 4

[q] 1:1: Оператор сцепления (конкатенации) выглядит таким образом:

[a] %%

[a] [+] ||

[a] &&

[a] ^^

[a] ''

[q] 1:1: Дана таблица cars:

color

-----

blue

red

null

blue

Каким будет результат следующего запроса:

SELECT COUNT(DISTINCT color) FROM cars

[a] [+] 2

[a] red

[a] blue

[a] null

[a] 3

[q] 3:1: С помощью какого update-запроса можно обновить значения более чем одной колонки?

[a] UPDATE table_name SET col1_name = 'col1val' SET col2_name = 'col2val';

[a] Одним запросом можно обновить не более одной колонки

[a] UPDATE table_name SET col1_name = 'col1val' and SET col2_name = 'col2val';

[a] [+] UPDATE table_name SET col1_name = 'col1val', col2_name = 'col2val';

[a] UPDATE table_name SET col1_name = 'col1val' and SET col2_name = 'col3val';

[q] 2:1: Для чего применяются индексы в БД?

[a] для отката изменений

[a] [+] для ускорения доступа к данным

[a] для успешного завершения транзакций

[a] они не приминяются

[a] для объединения таблиц

[q] 2:1: Какими запросами можно получить все поля и записи таблицы Employers

[a] SELECT *.Employers

[a] SELECT Employers

[a] SELECT [all] FROM Employers

[a] [+] SELECT * FROM Employers

[a] SELECT * Employers

[q] 2:1: Чему эквивалентен следующий запрос:

SELECT * FROM product WHERE price BETWEEN 100 AND 200;

[a] [+] SELECT * FROM product WHERE price >= 100 AND price <= 200;

[a] SELECT * FROM product WHERE price > 100 OR price < 200;

[a] SELECT * FROM product WHERE price <= 100 OR price >= 200;

[a] SELECT * FROM product WHERE price < 100 OR price > 200;

[a] SELECT * FROM product WHERE price > 100 AND price < 200;

[q] 3:1: Дана пустая таблица, созданная с помощью выражения:

create table simple_tab (col1 varchar primary key);

Какие из перечисленных запросов отработают корректно:

[a] insert into simple_tab values ( null );

[a] [+] insert into simple_tab ( col1 ) values ( 'bb' );

[a] insert into simple_tab values ( aa );

[a] insert into simple_tab values ( 'a\'a' );

[a] insert into simple_tab values ( 0);

[q] 2:1: Выберите верный синтаксис DELETE выражений.

[a] [+] DELETE FROM WHERE

[a] DELETE FROM ORDER BY

[a] DELETE WHERE

[a] DELETE FROM HAVING

[a] DELETE INTO

[q] 1:1: Какой знак в запросах с использованием LIKE соответствует произвольному количеству символов в строке?

[a] [+] %

[a] _

[a] |

[a] /

[a] *

[q] 2:1: Какая ошибка в этом запросе?

UPDATE books SET sales_1999 >

(SELECT SUM(qty * price)

FROM sales

WHERE sales.book_id = books.id

AND sales.date BETWEEN '01/01/1999' AND '12/31/1999')

[a] Вы не можете использовать подзапрос для SET внутри оператора UPDATE. 371 / 1904

[a] [+] Следует использовать знак (=) для подзапроса. 1035 / 1904

[a] Вы не можете использовать арифметические операторы для функции SUM() (например SUM(qty * price)). 326 / 1904

[a] Ключевое слово BETWEEN нельзя использовать для символов или дат.

[q] 3:1: Что верно о следующем SQL выражении:

CREATE TABLE persons AS SELECT name, surname FROM person;

[a] Выражение составлено неверно

[a] Это выражение создаст пустую таблицу persons с колонками name и surname

[a] [+] Это выражение создаст таблицу persons с колонками name и surname и соответствующими данными из таблицы person

[a] Это выражение создаст таблицу persons с колонками name и surname, соответствующими данными из таблицы person, а так же индексами, как у таблицы person

[q] 2:1: Дана таблица, созданная с помощью SQL-выражения:

CREATE TABLE STUDENTS (