ALTER TABLE vendors
ADD COLUMN phone VARCHAR(15) AFTER name;
ALTER TABLE vendors
ADD COLUMN vendor_group INT NOT NULL;
INSERT INTO vendors(name,phone,vendor_group)
VALUES('IBM','(408)-298-2987',1);
INSERT INTO vendors(name,phone,vendor_group)
VALUES('Microsoft','(408)-298-2988',1);
SELECT
id, name, phone,vendor_group
FROM
vendors;
+----+-----------+----------------+--------------+
| id | name | phone | vendor_group |
+----+-----------+----------------+--------------+
| 1 | IBM | (408)-298-2987 | 1 |
| 2 | Microsoft | (408)-298-2988 | 1 |
+----+-----------+----------------+--------------+
2 rows in set
ALTER TABLE vendors
ADD COLUMN email VARCHAR(100) NOT NULL,
ADD COLUMN hourly_rate decimal(10,2) NOT NULL;
SELECT
id, name, phone, vendor_group, email, hourly_rate
FROM
vendors;
+----+-----------+----------------+--------------+-------+-------------+
| id | name | phone | vendor_group | email | hourly_rate |
+----+-----------+----------------+--------------+-------+-------------+
| 1 | IBM | (408)-298-2987 | 1 | | 0 |
| 2 | Microsoft | (408)-298-2988 | 1 | | 0 |
+----+-----------+----------------+--------------+-------+-------------+
2 rows in set
ALTER TABLE vendors
ADD COLUMN vendor_group INT NOT NULL;
Error Code: 1060. Duplicate column name 'vendor_group'
SELECT
IF(count(*) = 1, 'Exist','Not Exist') AS result
FROM
information_schema.columns
WHERE
table_schema = 'testdb'
AND table_name = 'vendors'
AND column_name = 'phone';
+--------+
| result |
+--------+
| Exist |
+--------+
1 row in set