Questa è la tabella ‘dottori’
CREATE TABLE agenda (id integer PRIMARY KEY AUTO_INCREMENT, dottore varchar(30), data DATE, giorno varchar(10), ospedale varchar(30), citta varchar(10), Stato varchar(2)); INSERT INTO agenda (dottore, data, giorno, ospedale, citta, Stato) VALUES ('Gregory House', '2023-04-25', 'Lunedì', 'Plainsboro', 'Princeton', 'NJ'); INSERT INTO agenda (dottore, data, giorno, ospedale, citta, Stato) VALUES ('Randolph Bell', '2023-04-26', 'Martedì', 'Chastain', 'Atlanta', 'GA'); INSERT INTO agenda (dottore, data, giorno, ospedale, citta, Stato) VALUES ('Meredith Grey', '2023-04-28', 'Giovedì', 'Grey Sloan', 'Seattle', 'WA');
Queste sono le query e le modifiche del capitolo 6
SELECT * FROM agenda ALTER TABLE agenda ADD orario TIME; UPDATE agenda SET orario = '16:00' WHERE id = 1; UPDATE agenda SET orario = '18:00' WHERE id = 2; UPDATE agenda SET orario = '11:00' WHERE id = 3; ALTER TABLE agenda DROP COLUMN giorno; ALTER TABLE agenda DROP COLUMN Stato; SELECT *, DATE_FORMAT(data, '%d-%m-%Y') as data_ok FROM agenda; SELECT id, dottore, citta, ospedale, giorno, DATE_FORMAT(data, '%d-%m-%Y') as data_ok, orario FROM agenda;
Queste sono query e modifiche del capitolo 7
— Per mettere in maiuscolo il campo ‘giorno’
UPDATE agenda SET giorno = UPPER(giorno);
— Per modificare il campo ‘dottore’ da ‘Nome Cognome’ in ‘N. Cognome’
UPDATE agenda SET dottore = CONCAT(LEFT(dottore, 1), '. ', SUBSTRING_INDEX(dottore, ' ', -1));
/*
Per aggiungere una nuova colonna
con la differenza in giorni dal 01-01-2023
*/
ALTER TABLE agenda ADD COLUMN da_1_genn INT; UPDATE agenda SET da_1_genn = DATEDIFF(data, '2023-01-01');
/*
Per visualizzare media, minimo e massimo
del campo da_1_genn
*/
SELECT AVG(da_1_genn) AS media, MIN(da_1_genn) AS minimo, MAX(da_1_genn) AS massimo FROM agenda;