(SQL) CREATE: Defining a Database, Schema, Table

(Substantially borrowed from W3Schools)

You can either create a database or create a table.

The SQL CREATE DATABASE Statement

The CREATE DATABASE statement is used to create a new SQL database.

Syntax

CREATE DATABASE databasename;

Tip: Make sure you have admin privilege before creating any database. Once a database is created, you can check it in the list of databases with the following SQL command: SHOW DATABASES;

The SQL CREATE TABLE Statement

The CREATE TABLE statement is used to create a new table in a database.

Syntax

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype,
   ....
);

The column parameters specify the names of the columns of the table. The datatype parameter specifies the type of data the column can hold (e.g. varchar, integer, date, etc.).

Tip: For an overview of the available data types, go to the Data Types Reference.

Create Table Using Another Table

A copy of an existing table can also be created using CREATE TABLE. The new table gets the same column definitions. All columns or specific columns can be selected. The new table will be filled with the existing values from the old table.

Syntax

CREATE TABLE new_table_name AS
  SELECT column1, column2,...
  FROM existing_table_name
  WHERE ....;

Example

The following SQL creates a new table called TestTables (which is a copy of the Customers table):

CREATE TABLE TestTable AS
SELECT customername, contactname
FROM customers;