Import data

From SQLZOO
Jump to navigation Jump to search

Import someone else's data.

In this example you are shown how to make a mimic which essentially makes a copy of the database table so it can be freely edited

and then the newly fresh one when finished can be used to replace the out of date existing table.

Table 1 and 2 show the two separate tables and table 3 displays the results that should be inside the mimic in this example.

Table 1
idparkingSpace
E01F8
E02G22
E03F7
Table 2
idnamephone
E01Harpo2753
E02Zeppo2754
E03Groucho2755
Table 3
idnamephoneparkingSpace
E01Harpo2753F8
E02Zeppo2754G22
E03Groucho2755F7
schema:scott
DROP TABLE employeeParking;
DROP TABLE employeeCopy;
DROP VIEW mimic;
 CREATE TABLE employeeParking(
  id TEXT,
  parkingSpace TEXT );
INSERT INTO employeeParking VALUES ('E01','F8');
INSERT INTO employeeParking VALUES ('E02','G22');
INSERT INTO employeeParking VALUES ('E03','F7');
CREATE TABLE employeeCopy (
  id TEXT,
  name VARCHAR(20),
  phone INTEGER );
INSERT INTO employeeCopy VALUES ('E01','Harpo',2753);
INSERT INTO employeeCopy VALUES ('E02','Zeppo',2754);
INSERT INTO employeeCopy VALUES ('E03','Groucho',2755);

To allow data to be imported into your system a mimic of your system can be made and then all that needs to be done is the rows from the old copy have to be deleted and then the table can be refilled with the fresh imported copy.

This method is not completely ideal but is efficient as a temporary measure until an up to date version of the table is made.

CREATE VIEW mimic AS
     SELECT employeeParking.id, COALESCE(name, employeeParking.id) AS name,
     COALESCE(phone, 'Not Available') AS phone, parkingSpace
       FROM employeeParking LEFT OUTER JOIN
employeeCopy ON (employeeParking.id = employeeCopy.id);
       SELECT * FROM mimic;
DataWars, Data Science Practice Projects - LogoDataWars: Practice Data Science/Analysis with +100 Real Life Projects