This topic describes how to create a normal view.
Syntax
You can use the CREATE VIEW statement to create a view.
create_view_stmt:
CREATE [OR REPLACE] VIEW view_name [(column_name_list)] AS select_stmt;
column_name_list:
column_name [, column_name ...]
Parameters
| Parameter | Description |
|---|---|
| OR REPLACE | Indicates using a new definition to recreate the view if the name of the view to be created already exists. |
| view_name | The name of the view. |
| select_stmt | A SELECT statement that defines a view. You can use this statement to query base tables or other views. |
| column_name_list | The column names in the view, which must be unique, like those in a base table. By default, the column names retrieved by the SELECT statement are used as the column names in the view. You can also use the optional column_name_list clause to define column names for a view. Separate multiple column names with commas (,). The number of column names in column_name_list must be equal to the number of columns retrieved by the SELECT statement. The SELECT statement can directly reference the columns of a table. You can also use functions, constants, and operators in the statement to retrieve columns. |
Example
Create an associated query view named v based on the t1 and t2 tables.
Create a table named
t1.obclient> CREATE TABLE t1 (id1 int,name varchar(256),sex varchar(256)); Query OK, 0 rows affectedCreate a table named
t2.obclient> CREATE TABLE t2 (id2 int,age int,date date); Query OK, 0 rows affectedCreate a view named
v.obclient> CREATE VIEW v AS SELECT id1 as id,name, date, age, sex FROM t1 a, t2 b WHERE a.id1 = b.id2; Query OK, 0 rows affectedShow the description of the
vview.obclient> DESC v; +-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | id | int(11) | YES | | NULL | | | name | varchar(256) | YES | | NULL | | | date | date | YES | | NULL | | | age | int(11) | YES | | NULL | | | sex | varchar(256) | YES | | NULL | | +-------+--------------+------+-----+---------+-------+ 5 rows in set