sql語句中as的意思是什么
sql語句中as的意思是別名,或者說給顯示的結果改名。比如,select name as 姓名 from student.
意思是查詢student表中的name字段,但是在顯示的時候顯示姓名(而不是表中的name)
還比如下面:concat(path,',',id)函數用","把前后字段【path和id】連接起來形成一個新字段 改名為fullpath
select id,catename,path,concat(path,',',id) as fullpath from likecate where 1 order by fullpath asc.
擴展資料:
as 一般用在兩個地方,一個是query的時候,用來重新指定返回的column(列) 名字
如:一個table 有個column叫 id, 我們的query是
select id from table1. 但是如果你不想叫id了,就可以重新命名,如叫 systemID 就可以這樣寫
select id as systemId from table1;
還有一個用法就是在create table 或 procedure 的時候,as 是個關鍵字。
例如
create table test as select * from table1
這時候就會create 一個table test,他是完全copy 表table1里的全部數據。
create procdure name as (is)
begin
end;
具體可以參考 如何建立procedure。 這個時候 as 和is可以互換。
參考資料:搜狗百科-sql語句
SQL語句里面,里面的AS有什么用啊
As簡單的講是指定視圖要執行的操作
創建視圖的完整語法
CREATE VIEW [ schema_name . ] view_name [ (column [ ,。n ] ) ]
[ WITH [ ,。n ] ]
AS select_statement
[ WITH CHECK OPTION ] [ ; ]
::=
{
[ ENCRYPTION ]
[ SCHEMABINDING ]
[ VIEW_METADATA ] }
其中
schema_name
視圖所屬架構的名稱,默認是dbo
view_name
視圖的名稱,視圖名稱必須符合有關標識符的規則
column
視圖中的列使用的名稱,僅在下列情況下需要列名:列是從算術表達式,函數或常量派生的,
兩個或更多的列可能會具有相同的名稱(通常是由于聯接的原因)
視圖中的某個列的指定名稱不同于其派生來源列的名稱,還可以在 SELECT 語句中分配列名
如果未指定 column,則視圖列將獲得與 SELECT 語句中的列相同的名稱
AS
指定視圖要執行的操作
select_statement
定義視圖的 SELECT 語句,該語句可以使用多個表和其他視圖,
需要相應的權限才能在已創建視圖的 SELECT 子句引用的對象中選
視圖定義中的 SELECT 子句不能包括下列內容:
COMPUTE 或 COMPUTE BY 子句
ORDER BY 子句,除非在 SELECT 語句的選擇列表中也有一個 TOP 子句
INTO 關鍵字
OPTION 子句
引用臨時表或表變量
CHECK OPTION
強制針對視圖執行的所有數據修改語句都必須符合在 select_statement 中設置的條件
ENCRYPTION
對 *ments 表中包含 CREATE VIEW 語句文本的項進行加密
SCHEMABINDING
將視圖綁定到基礎表的架構,如果指定了 SCHEMABINDING,則不能按照將影響視圖定義的方式修改基表或表,
必須首先修改或刪除視圖定義本身,才能刪除將要修改的表的依賴關系
VIEW_METADATA
指定為引用視圖的查詢請求瀏覽模式的元數據時,SQL Server 實例將向 DB-Library,ODBC 和 OLE DB API
返回有關視圖的元數據信息,而不返回基表的元數據信息
sql查詢語句大全
一、基礎 1、說明:創建數據庫 Create DATABASE database-name 2、說明:刪除數據庫 drop database dbname 3、說明:備份sql server --- 創建 備份數據的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_*' --- 開始 備份 BACKUP DATABASE pubs TO testBack 4、說明:創建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根據已有的表創建新表: A:create table tab_new like tab_old (使用舊表創建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、說明:刪除新表 drop table tabname 6、說明:增加一個列 Alter table tabname add column col type 注:列增加后將不能刪除。
DB2中列加上后數據類型也不能改變,唯一能改變的是增加varchar類型的長度。 7、說明:添加主鍵: Alter table tabname add primary key(col) 說明:刪除主鍵: Alter table tabname drop primary key(col) 8、說明:創建索引:create [unique] index idxname on tabname(col….) 刪除索引:drop index idxname on tabname 注:索引是不可更改的,想更改必須刪除重新建。
9、說明:創建視圖:create view viewname as select statement 刪除視圖:drop view viewname 10、說明:幾個簡單的基本的sql語句 選擇:select * from table1 where 范圍 插入:insert into table1(field1,field2) values(value1,value2) 刪除:delete from table1 where 范圍 更新:update table1 set field1=value1 where 范圍 查找:select * from table1 where field1 like '%value1%' (所有包含'value1'這個模式的字符串)---like的語法很精妙,查資料! 排序:select * from table1 order by field1,field2 [desc] 總數:select count as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最小:select min(field1) as minvalue from table1[separator] 11、說明:幾個高級查詢運算詞 A: UNION 運算符 UNION 運算符通過組合其他兩個結果表(例如 TABLE1 和 TABLE2)并消去表中任何重復行而派生出一個結果表。當 ALL 隨 UNION 一起使用時(即 UNION ALL),不消除重復行。
兩種情況下,派生表的每一行不是來自 TABLE1 就是來自 TABLE2。 B: EXCEPT 運算符 EXCEPT 運算符通過包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重復行而派生出一個結果表。
當 ALL 隨 EXCEPT 一起使用時 (EXCEPT ALL),不消除重復行。 C: INTERSECT 運算符 INTERSECT 運算符通過只包括 TABLE1 和 TABLE2 中都有的行并消除所有重復行而派生出一個結果表。
當 ALL 隨 INTERSECT 一起使用時 (INTERSECT ALL),不消除重復行。 注:使用運算詞的幾個查詢結果行必須是一致的。
12、說明:使用外連接 A、left outer join: 左外連接(左連接):結果集既包括連接表的匹配行,也包括左連接表的所有行。 SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c B:right outer join: 右外連接(右連接):結果集既包括連接表的匹配連接行,也包括右連接表的所有行。
C:full outer join: 全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。 [編輯本段]二、提升 1、說明:復制表(只復制結構,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1 法二:select top 0 * into b from a 2、說明:拷貝表(拷貝數據,源表名:a 目標表名:b) (Access可用) insert into b(a, b, c) select d,e,f from b; 3、說明:跨數據庫之間表的拷貝(具體數據使用絕對路徑) (Access可用) insert into b(a, b, c) select d,e,f from b in '具體數據庫' where 條件 例子:..from b in '"&*h("."&"\*" &"' where.. 4、說明:子查詢(表名1:a 表名2:b) select a,b,c from a where a IN (select d from b 或者: select a,b,c from a where a IN (1,2,3) 5、說明:顯示文章、提交人和最后回復時間 select *,*me,*e from table a,(select max(adddate) adddate from table where *=*) b 6、說明:外連接查詢(表名1:a 表名2:b) select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c 7、說明:在線視圖查詢(表名1:a select * from (Select a,b,c FROM a) T where t.a > 1; 8、說明:between的用法,between限制查詢數據范圍時包括了邊界值,not between不包括 select * from table1 where time between time1 and time2 select a,b,c, from table1 where a not between 數值1 and 數值2 9、說明:in 的使用方法 select * from table1 where a [not] in ('值1','值2','值4','值6') 10、說明:兩張關聯表,刪除主表中已經在副表中沒有的信息 delete from table1 where not exists ( select * from table2 where *1=*1 11、說明:四表聯查問題: select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c 。