some--sql

--说明:复制表(只复制结构,源表名:a 新表名:b) 

--SQL: select * into b from a where 1<>1 
--
use testCrystal
--
select * into b from tblItem where 1<>1         //但是主键没有自动设置


--说明:拷贝表(拷贝数据,源表名:a 目标表名:b) 

--SQL: insert into b(a, b, c) select d,e,f from b; 

--insert into b(ItemId,Description) select ItemId,Description from tblItem
--
前提是b已经存在(可以在本文的第一步建好),后面的ItemId,Description为源表的已知字段,所

--以,要拷贝表,必须已知源表的结构




--如果指定了限定的列名称,限定符必须同 UPDATE 子句中的表或视图的名称相匹配。例如,下面的内容有效:

UPDATE authors
    
SET authors.au_fname = 'Annie'
    
WHERE au_fname = 'Anne'

--FROM 子句中指定的表的别名不能作为 SET column_name 子句中的限定符使用。例如,下面的内容无效:

UPDATE titles
    
SET t.ytd_sales = t.ytd_sales + s.qty
    
FROM titles t, sales s
    
WHERE t.title_id = s.title_id
    
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

--若要使上例合法,请从列名中删除别名 t。

UPDATE titles
    
SET ytd_sales = t.ytd_sales + s.qty
    
FROM titles t, sales s
    
WHERE t.title_id = s.title_id
    
AND s.ord_date = (SELECT MAX(sales.ord_date) FROM sales)

posted on 2007-08-10 23:11  simhare  阅读(218)  评论(0编辑  收藏  举报

导航