-
Notifications
You must be signed in to change notification settings - Fork 1
/
_8.py
47 lines (36 loc) · 1.88 KB
/
_8.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# By Zhufyak V.V
# zhufyakvv@gmail.com
# github.com/zhufyakvv
# 23.10.2017
#
# База даних містить інформацію про автомобілі у вигляді: номерний знак, марка авто, модель, рік випуску, вартість,
# пробіг, прізвище і ім’я власника. Для заданого року випуску знайдіть найдорожчий автомобіль, а також підрахуйте
# загальну вартість усіх автомобілів. В завданні 1 використайте “Об'єктно-орієнтовані бази даних (ZODB)”.
#
import sqlite3
table_name = "Car"
def get_most_value(cursor):
return cursor.execute("SELECT * FROM %s ORDER BY price DESC " % table_name).fetchone()
def get_sum(cursor):
return cursor.execute("SELECT SUM(price) as result FROM %s" % table_name).fetchone()[0]
def init(cursor):
return cursor.execute("""CREATE TABLE %s(
number VARCHAR(6),
mark VARCHAR(64),
model VARCHAR(64),
year INT,
price FLOAT,
in_run FLOAT,
owner VARCHAR(128),
PRIMARY KEY (number));""" % table_name)
def seed(cursor):
cursor.execute("INSERT INTO %s VALUES ('VF231F', 'Audi', 'A4', 2008, 8000, 23000, 'Baglay Roman')" % table_name)
cursor.execute("INSERT INTO %s VALUES ('VF222F', 'Nuva', '1A', 1997, 100, 223000, 'Moshnyaga Roman')" % table_name)
cursor.execute("INSERT INTO %s VALUES ('DF321A', 'Nisan', 'ATO', 2000, 5100, 3000, 'Me')" % table_name)
DATABASE_PATH = 'db.sqlite3'
db = sqlite3.connect(DATABASE_PATH)
cursor = db.cursor()
print(get_most_value(cursor))
print(get_sum(cursor))
# init(cursor)
# seed(cursor)