从索引上的oracle到mysql的转换

时间:2016-03-10 10:55:30

标签: mysql oracle

我在oracle中有一个查询     " CREATE INDEX index_i1    ON测试(nvl(id,0));"

如果将其转换为mysql     " 在测试时创建索引index_i1(ifnull(data,0));"我在id

附近使用语法错误

转换它的正确方法是什么。 谢谢 SKP

1 个答案:

答案 0 :(得分:0)

这是在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是此处要添加索引

的列名称

Official site

这是你的陈述:

create index index_i1 on test(data);

我假设test是表名,data是列名。您可以在表结构创建时设置数据的默认值。