SQL語句的作用是什么
和數據庫對話
SQL介紹:
本書假設你是在SQL操作Microsoft SQL Sever 的數據庫。你也可以用SQL操作許多其它類型的數據庫。SQL是操作數據庫的標準語言。(事實上,關于SQL語言有一個專門的ANSI標準〕
注意:
不要在你的站點上試圖用Microsoft Access代替Microsoft SQL Sever。SQL Sever可以同時服務于許多用戶,如果你希望你的站點有較高的訪問率,MS Access是不能勝任的。
在學習SQL的細節之前,你需要理解它的兩大特點。一個特點容易掌握,另一個掌握起來有點困難。
第一個特點是所有SQL數據庫中的數據都存儲在表中。一個表由行和列組成。例如,下面這個簡單的表包括name 和e-mail address:
Name Email Address
。。。。。。。。。。。。。。。。。。。。。.
Bill Gates billg@*
president Clinton president@*
Stephen Walther swalther@*
這個表有兩列(列也稱為字段,域〕:Name和Email Address。有三行,每一行包含一組數據。一行中的數據組合在一起稱為一條記錄。
無論何時你向表中添加新數據,你就添加了一條新記錄。一個數據表可以有幾十個記錄,也可以有幾千甚至幾十億個記錄。雖然你也許永遠不需要存儲十億個Email地址,但知道你能這樣做總是好的,也許有一天你會有這樣的需要。
你的數據庫很有可能包含幾十個表,所有存儲在你數據庫中的信息都被存儲在這些表中。當你考慮怎樣把信息存儲在數據庫中時,你應該考慮怎樣把它們存儲在表中。
SQL的第二個特點有些難于掌握。這種語言被設計為不允許你按照某種特定的順序來取出記錄,因為這樣做會降低SQL Sever取記錄的效率。使用SQL,你只能按查詢條件來讀取記錄。
當考慮如何從表中取出記錄時,自然會想到按記錄的位置讀取它們。例如,也許你會嘗試通過一個循環,逐個記錄地掃描,來選出特定的記錄。在使用SQL時,你必須訓練自己,不要有這種思路。
假如你想選出所有的名字是“Bill Gates”的記錄,如果使用傳統的編程語言,你也許會構造一個循環,逐個查看表中的記錄,看名字域是否是“Bill Gates”。
這種選擇記錄的方法是可行的,但是效率不高。使用SQL,你只要說,“選擇所有名字域等于Bill Gates的記錄”,SQL就會為你選出所有符合條件的記錄。SQL會確定實現查詢的最佳方法。
建設你想取出表中的前十個記錄。使用傳統的編程語言,你可以做一個循環,取出前十個記錄后結束循環。但使用標準的SQL查詢,這是不可能實現的。從SQL的角度來說,在一個表中不存在前十個記錄這種概念。
開始時,當你知道你不能用SQL實現某些你感覺應該能實現的功能,你會受到挫折。你也許會以頭撞墻甚至想寫惡毒的信件給SQL的設計者們。但后來你會認識到,SQL的這個特點不僅不是個限制,反而是其長處。因為SQL不根據位置來讀取記錄,它讀取記錄可以很快。
有人知道在sql 語句中(+)的作用是什么
第一個是右外連接,即以s表為主表,以這個連接條件連接,會查查s表的所有記錄,而ws表,如果有符合條件的,會查詢出來,沒有符合條件的,為空,但仍然會列出來。
第二個是做外連接,與第一個相反,以ws表為主表。
第三個是直連,只取出兩個連接成立時的所有數據。
舉個例子吧:
1. LEFT OUTER JOIN:左外關聯
SELECT *_name, *ment_id, *ment_name
FROM employees e
LEFT OUTER JOIN departments d
ON (*ment_id = *ment_id);
等價于
SELECT *_name, *ment_id, *ment_name
FROM employees e, departments d
WHERE *ment_id=*ment_id(+);
結果為:所有員工及對應部門的記錄,包括沒有對應部門編號department_id的員工記錄。
2. RIGHT OUTER JOIN:右外關聯
SELECT *_name, *ment_id, *ment_name
FROM employees e
RIGHT OUTER JOIN departments d
ON (*ment_id = *ment_id);
等價于
SELECT *_name, *ment_id, *ment_name
FROM employees e, departments d
WHERE *ment_id(+)=*ment_id;
結果為:所有員工及對應部門的記錄,包括沒有任何員工的部門記錄。
3.第三種直接連接就不用寫了,就是查詢符合連接條件的所有記錄
SQL語句都是作用在數據庫的么
SQL全稱是結構化查詢語言(Structured Query Language) SQL(STructured Query Language)是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新。
二、數據操作語言(DML),例如:INSERT、UPDATE、DELETE語句。
三、數據查詢語言,例如:SELECT語句。
四、數據控制語言,例如:GRANT、REVOKE、COMMIT、ROLLBACK等語句。
SQL語言包括兩種主要程序設計語言類別的陳述式:數據定義語言(DDL)與數據操作語言(DML)。
主要應用于數據存儲,數據操作等,比如你要制作一個asp,*,jsp等動態網頁都需要對數據進行操作,這時你就得使用SQL語句,這方法不是唯一途徑,但最快捷和方便也易于操作,當然SQL的作用不僅僅限制于制作網站,更重要的事用在企業級的數據存儲~!
呵呵 知識有限 只能說這么多了 自己可以在網上找資料看看 這方面的資料很多 也可以買這方面的書籍看看
轉載請注明出處華閱文章網 » ><在sql語句的作用