sql别名 索引

1.sql 别名

SELECT column_name AS alias_name
        FROM table_name
        WHERE [condition];
SQL> SELECT C.ID, C.NAME, C.AGE, O.AMOUNT 
        FROM CUSTOMERS AS C, ORDERS AS O
        WHERE  C.ID = O.CUSTOMER_ID;

2.索引
索引有助于加快SELECT和WHERE子句查询,但它会减慢数据输入,使用UPDATE和INSERT语句。索引可创建或删除,但对数据不会有影响。
CREATE INDEX的基本语法如下:

CREATE INDEX index_name ON table_name;

单列索引是一个基于只有创建表列。 其基本语法如下:


CREATE INDEX index_name
ON table_name (column_name);

唯一索引:
唯一索引不仅用于性能,而且要求数据的完整性。唯一索引不允许有
任何重复值插入到表中。 其基本语法如下:


CREATE UNIQUE INDEX index_name
on table_name (column_name);

组合索引:
组合索引在表上的两个或多个列的索引。其基本语法如下:

CREATE INDEX index_name
on table_name (column1, column2);
CREATE INDEX index_name
on table_name (column1, column2);
是否要创建一个单列索引或复合索引,考虑到列,您可以使用非常频繁的查询的WHERE子句作为过滤条件。

应该有只有一个使用列,单列指数应的选择。如果有频繁使用WHERE子句作为过滤器中的两个或多个列,组合索引将是最好的选择。

隐式索引:
隐式索引是自动由数据库服务器创建对象时创建的索引。索引是主键约束和唯一性约束自动创建。
DROP INDEX命令:

索引可以使用SQL DROP命令删除。 应当谨慎删除索引时导致的性能可能会减慢或改善。
其基本语法如下:
DROP INDEX index_name;

当如下情况应该避免索引

索引不应该用在小型表上。

有频繁的,大批量更新或插入操作的表。

索引不应该用于对包含大量NULL值的列。

列经常操纵不应该被索引。

你可能感兴趣的:(sql别名 索引)