SQL - Clients (Final)
SQL - Clients (Final)
connector
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707"
)
mycursor = mydb.cursor()
mycursor.execute("create database coffee3")
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707"
)
mycursor = mydb.cursor()
mycursor.execute("show databases")
for x in mycursor:
print(x)
('coffee',)
('coffee2',)
('coffee3',)
('films',)
('information_schema',)
('movies',)
('movies2',)
('mysql',)
('performance_schema',)
('sys',)
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.execute("CREATE TABLE client (name VARCHAR(255), address
VARCHAR(255), Phone int)")
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.execute("show tables")
for x in mycursor:
print(x)
('client',)
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.execute("CREATE TABLE customers (id INT AUTO_INCREMENT
PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))")
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mydb.commit()
print(mycursor.rowcount, "record inserted.")
Enter Name:Leonardo
Enter Address:CDMX
1 record inserted.
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.executemany(sql, val)
mydb.commit()
print(mycursor.rowcount, "record inserted.")
5 record inserted.
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
myresult = mycursor.fetchall()
for x in myresult:
print(x)
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
myresult = mycursor.fetchall()
for x in myresult:
print(x)
('Leonardo', 'CDMX')
('John', 'California 2')
('Juliette', 'Paris 4')
('Varun', 'Ontario')
('Franz', 'Berlin')
('Giulio', 'Rome')
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
myresult = mycursor.fetchone()
print(myresult)
('Leonardo', 'CDMX')
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
sql = "SELECT * FROM customers WHERE address ='Ontario'"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
(4, 'Varun', 'Ontario')
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.execute(sql, adr)
mydb.commit()
1 record(s) deleted
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
sql = "UPDATE customers SET address = 'Hong Kong' WHERE address =
'CDMX'"
mycursor.execute(sql)
mydb.commit()
1 record(s) affected
Join
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.execute("CREATE TABLE product (id int, prodname
VARCHAR(255))")
mycursor.executemany(sql, val)
mydb.commit()
print(mycursor.rowcount, "record inserted.")
5 record inserted.
Inner Join
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
Select
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
sql = "SELECT
customers.id,customers.name,customers.address,product.prodname \
FROM customers JOIN product ON customers.id = product.id"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
Left Join
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
sql = "SELECT
customers.id,customers.name,customers.address,product.prodname \
FROM customers LEFT JOIN product ON customers.id = product.id"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
sql = "SELECT
customers.id,customers.name,customers.address,product.prodname \
FROM customers RIGHT JOIN product ON customers.id = product.id"
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="TTtms5134070707",
database="coffee3"
)
mycursor = mydb.cursor()
mycursor.execute(sql)
myresult = mycursor.fetchall()
for x in myresult:
print(x)
import pandas as pd
from_database = []
display(df)
Homework
1 .− Add a column price to the previous table. Compute the following associated to the
prices:
• mean
• min
• max
and order the table rom the highest price to the lowest. Then, select the row with the
highest price.
df1 = pd.DataFrame(
{
"Prices": ["3.90", "4.00", "2.50", "2.75", "3.25", "4.50",
"5.00"],
},
df1
Prices
0 3.90
1 4.00
2 2.50
3 2.75
4 3.25
5 4.50
6 5.00
print(tabla)
print(P)
0 3.90
1 4.00
2 2.50
3 2.75
4 3.25
5 4.50
6 5.00
Name: Prices, dtype: float64
2.5
5.0
3.6999999999999997
2 .− Using the db writers, use the left join method to add the columns: ouvre 2, year of
appareance of ouvre 2 and another characteristic that you think is important.
Este inciso se encuentra resuelto abajo de la base de datos de 'Films'.
3 . − Use all the sort methods that you already know in Pandas.
print(tabla["Id"]) #Le pedimos que nos muestre sólo la columna "Id".
0 1.0
1 2.0
2 3.0
3 5.0
4 6.0
5 NaN
6 NaN
Name: Id, dtype: float64
0 Leonardo
1 John
2 Juliette
3 Franz
4 Giulio
5 None
6 None
Name: Customer, dtype: object
Id 6.0
Customer Giulio
City Rome
Product 6.0
Prodname Americano
Prices 3.25
Name: 4, dtype: object
5 . − Create a table with 5 other writers with the same characteristics as before and add it to
the existing one.
data = {
"Rank" : ["19", "20", "21", "22", "23"],
"Name Film" : ["Spider-Man: NWH", "Iron Man", "Deadpool", "Space
Jam", "Sonic"],
"Director" : ["Jon Watts", "Jon Favreau", "Tim Miller", "Joe
Pytka", "Jeff Fowler"],
"Language" : ["ENG", "ENG", "ENG", "ENG", "ENG"],
"Year" : ["2021", "2008", "2016", "1996", "2020"]
}
data #Aquí creamos otro conjunto de datos con las divisiones que ya
tenía la base de datos original de "Films".
return connection
pw="TTtms5134070707"
db="Films"
def execute_query(connection,query):
cursor = connection.cursor()
try:
cursor.execute(query)
connection.commit()
print("Query successful")
except Error as err:
print(f"Error: '{err}' ")
create_Films_table = """
CREATE TABLE Films (
Movie_pos INT,
Movie VARCHAR(40) NOT NULL,
Director VARCHAR(40) NOT NULL,
Language VARCHAR(3) NOT NULL,
Year INT
);
"""
my_films = """
INSERT INTO Films VALUES
(1, 'Minions', 'Pierre Coffin', 'ENG', 2015),
(2, 'Baby Driver', 'Edgar Wright', 'ENG', 2017),
(3, 'Star Wars: Rogue One', 'Gareth Edwards', 'ENG', 2016),
(4, 'Interestellar', 'Cristopher Nolan', 'ENG', 2014),
(5, 'Spider-Man 2', 'Sam Reimi', 'ENG', 2004),
(6, 'Nerve', 'Ariel Schulman', 'ENG', 2016),
(7, 'Cars', 'John Lasseter', 'ENG', 2006),
(8, 'Bird Box', 'Sussane Dier', 'ENG', 2018),
(9, 'The Simpsons: Movie', 'Matt Groening', 'ENG', 2007);
"""
q1 = """
SELECT *
FROM Films;
"""
import pandas as pd
from_db = []
display(df)
NameFilm2 = pd.DataFrame(
{
"Name Film 2": ["Despicable Me", "Ant-Man", "Godzilla",
"Batman: The Dark Night", "The Jungle Book", "Catfish", "Toy Story 2",
"Serena", "Futurama: Bender's Big Score"],
},
NameFilm2
Name Film 2
0 Despicable Me
1 Ant-Man
2 Godzilla
3 Batman: The Dark Night
4 The Jungle Book
5 Catfish
6 Toy Story 2
7 Serena
8 Futurama: Bender's Big Score
Year2 = pd.DataFrame(
{
"Year 2": ["2010", "2015", "2014", "2008", "2016", "2010",
"1999", "2014", "2007"],
},
) #Hacemos un Data Frame con los años en los que salieron esas
películas.
Year2
Year 2
0 2010
1 2015
2 2014
3 2008
4 2016
5 2010
6 1999
7 2014
8 2007
tabla = pd.concat([NameFilm2, Year2], axis=1) #Usamos la función
'concat' para unir estos últimos 2 Data Frames. También renombramos
esa unión como "tabla".
print(tabla)
print(FilmsFinal)