0
我在oracle中查詢爲 「CREATE INDEX index_i1 ON test(nvl(id,0));」從oracle到mysql的索引轉換
如果正在轉換到這一點的MySQL 「上測試創建索引index_i1(IFNULL(數據,0));」我得到語法錯誤使用附近ID
什麼是正確的方式來轉換這。 感謝 SKP
我在oracle中查詢爲 「CREATE INDEX index_i1 ON test(nvl(id,0));」從oracle到mysql的索引轉換
如果正在轉換到這一點的MySQL 「上測試創建索引index_i1(IFNULL(數據,0));」我得到語法錯誤使用附近ID
什麼是正確的方式來轉換這。 感謝 SKP
這句法在MySQL
CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name
[index_type]
ON tbl_name (index_col_name,...)
[index_option]
[algorithm_option | lock_option] ...
index_col_name:
col_name [(length)] [ASC | DESC]
index_type:
USING {BTREE | HASH}
index_option:
KEY_BLOCK_SIZE [=] value
| index_type
| WITH PARSER parser_name
| COMMENT 'string'
algorithm_option:
ALGORITHM [=] {DEFAULT|INPLACE|COPY}
lock_option:
LOCK [=] {DEFAULT|NONE|SHARED|EXCLUSIVE}
創建索引。例如:
CREATE INDEX part_of_name ON customer (name(10));
NAME
是列名在這兒,你要添加索引
這是您的語句:
create index index_i1 on test(data);
我認爲測試是表名,data
是列名。您可以在表結構創建時設置數據的默認值。
我認爲你需要添加一個存儲生成的'ifnull(data,0)'列並索引它。 http://mysqlserverteam.com/generated-columns-in-mysql-5-7-5/ *只有存儲的生成列可以是索引的一部分* –