您好,欢迎访问一九零五行业门户网

用SQL建立索引

用sql建立索引 为了给一个表建立索引,启动任务栏sql sever程序组中的isql/w程序。进入查询窗口后,输入下面的语句: create index mycolumn_index on mytable (myclumn) 这个语句建立了一个名为mycolumn_index的索引。你可以给一个索引起任何名字,但你应该
用sql建立索引
    为了给一个表建立索引,启动任务栏sql sever程序组中的isql/w程序。进入查询窗口后,输入下面的语句:
       create index mycolumn_index on mytable (myclumn)
    这个语句建立了一个名为mycolumn_index的索引。你可以给一个索引起任何名字,但你应该在索引名中包含所索引的字段名,这对你将来弄清楚建立该索引的意图是有帮助的。
    注意:
    执行后,都会收到如下的信息:
    this   command did not return data,and it did not return any rows
这说明该语句执行成功了。
索引mycolumn_index对表mytable的mycolumn字段进行。这是个非聚簇索引,也是个非唯一索引。(这是一个索引的缺省属性)
如果你需要改变一个索引的类型,你必须删除原来的索引并重建 一个。建立了一个索引后,你可以用下面的sql语句删除它:
drop index mytable.mycolumn_index
注意在drop index 语句中你要包含表的名字。在这个例子中,你删除的索引是mycolumn_index,它是表mytable的索引。
要建立一个聚簇索引,可以使用关键字clustered。记住一个表只能有一个聚簇索引。
这里有一个如何对一个表建立聚簇索引的例子:
create clustered index mycolumn_clust_index on mytable(mycolumn)
如果表中有重复的记录,当你试图用这个语句建立索引时,会出现错误。但是有重复记录的表也可以建立索引;你只要使用关键字allow_dup_row把这一点告诉sql sever即可:
create clustered index mycolumn_cindex on mytable(mycolumn) with allow_dup_row
这个语句建立了一个允许重复记录的聚簇索引。你应该尽量避免在一个表中出现重复记录,但是,如果已经出现了,你可以使用这种方法。
要对一个表建立唯一索引,可以使用关键字unique。对聚簇索引和非聚簇索引都可以使用这个关键字。这里有一个例子:
create unique coustered index myclumn_cindex on mytable(mycolumn)
这是你将经常使用的索引建立语句。无论何时,只要可以,你应该尽量对一个对一个表建立唯一聚簇索引来增强查询操作。
最后,要建立一个对多个字段的索引──复合索引──在索引建立语句中同时包含多个字段名。下面的例子对firstname和lastname两个字段建立索引:
create index name_index on username(firstname,lastname)
这个例子对两个字段建立了单个索引。在一个复合索引中,你最多可以对16个字段进行索引。
--联接
select
from dbo.k_baoming inner join
      dbo.k_kebiao on dbo.k_baoming.o_flowid = dbo.k_kebiao.f_apply_id
--左向外联接
select dbo.k_baoming.o_flowid
from dbo.k_baoming left outer join
      dbo.k_kebiao on dbo.k_baoming.o_flowid = dbo.k_kebiao.f_kebiaoid
--右向外联接
select dbo.k_baoming.o_flowid
from dbo.k_baoming right outer join
      dbo.k_kebiao on dbo.k_baoming.o_flowid = dbo.k_kebiao.f_kebiaoid
--完整外部联接
select dbo.k_baoming.o_flowid
from dbo.k_baoming full outer join
      dbo.k_kebiao on dbo.k_baoming.o_flowid = dbo.k_kebiao.f_kebiaoid
--可以不要outer
其它类似信息

推荐信息