{eval=Array;=+count(Array);}
其實(shí)如果想學(xué)好sql還是一個(gè)比較漫長的過程,需要時(shí)間積累,看你提問你應(yīng)該是想有一個(gè)比較深刻的sql知識(shí)掌握,深度學(xué)習(xí)sql肯定就離不開對(duì)數(shù)據(jù)庫原理的掌握,數(shù)據(jù)庫我建議你選擇mysql,開源數(shù)據(jù)庫可以根據(jù)個(gè)人能力去挖掘?qū)W習(xí),而mysql以后可能也是主流,所以個(gè)人建議基本分下面幾步去學(xué)習(xí),:
1.首先不要追求太深入,達(dá)到會(huì)寫會(huì)用的階段就好,熟練編寫sql語句,即買本教材邊看邊練習(xí),包括簡單的sql語句和后期的高級(jí)sql。
2.熟練編寫以后就是對(duì)sql的優(yōu)化,比如explain等,這個(gè)階段就是理解sql的執(zhí)行過程并掌握如何寫出高效的sql。
3.最后一步就是了解掌握數(shù)據(jù)庫原理,這對(duì)你的sql知識(shí)是很大的提高.
希望對(duì)你有所幫助,謝謝……
如何更好的學(xué)習(xí)和理解SQL及語法?
首先:
基本熟練使用DML(數(shù)據(jù)庫操作語言) 、DDL(數(shù)據(jù)庫定義語言)、DQL(數(shù)據(jù)庫查詢語言)、DCL(數(shù)據(jù)庫控制語言)
(1)DML:用于更新、刪除和插入記錄的語法。
(2)DDL:用于創(chuàng)建或刪除表格,也可以定義索引(鍵),規(guī)定表之間的關(guān)系,以及添加表間的約束。
(3)DQL:用于執(zhí)行查詢的語法,基本結(jié)構(gòu)是由SELECT子句,F(xiàn)ROM子句,WHERE子句組成的查詢塊。
SELECT <字段名>
FROM <表名或視圖>
WHERE <條件>
(4)DCL:用于創(chuàng)建與用戶訪問相關(guān)的對(duì)象,以及控制用戶的權(quán)限
相關(guān)書籍:初學(xué)者推薦圖靈出的《SQL必知必會(huì)(第4版)》 等
雖然 SQL 是一門 ANSI(American National Standards Institute 美國國家標(biāo)準(zhǔn)化組織)標(biāo)準(zhǔn)的計(jì)算機(jī)語言,但是仍然存在著多種不同版本的 SQL 語言。之前學(xué)習(xí)的時(shí)候在論壇看到《十步完全理解 SQL--很好的一篇關(guān)于sql的文章》提供了學(xué)習(xí)sql時(shí)的思考方式覺得不錯(cuò),我簡要列出十條目錄分享給各位,如有需要請百度搜索。
在進(jìn)一步學(xué)習(xí)時(shí)看一些書籍是很必要的例如:《SQL解惑(第2版)》,《SQL沉思錄》、《SQL編程風(fēng)格》、《SQL權(quán)威指南》等
希望對(duì)大家有所幫助,我是老貓兒c,偶爾分享一些東西,求贊求關(guān)注。
別看太高深的SQL,可以看看入門的SQL,像計(jì)算機(jī)二級(jí)這種水平的,入門什么的,肯定就可以了,而且也不難,也非常好接受。
希望對(duì)你的學(xué)習(xí)有幫助~~
從基礎(chǔ)知識(shí)開始,再加上更多的動(dòng)手練習(xí),SQL的語法并不難。遇到問題盡量想辦法解決,在解決問題的過程中就可以學(xué)到更多知識(shí)。
推薦看一下《SQL基礎(chǔ)教程第二版》,《SQL 必知必會(huì)》。這兩本書介紹的內(nèi)容比較詳細(xì)和全面。
此外也可以關(guān)注一下SQL 這方面的技術(shù)作者,可以了解一些深層次的內(nèi)容,有助于開闊技術(shù)層面。
謝邀。SQL不是過程的語言,寫慣了流程的程序員開始的時(shí)候可能會(huì)有些不適應(yīng)。理解SQL的語義而不是語法是成為SQL達(dá)人的關(guān)鍵。
舉個(gè)例子,一個(gè)學(xué)生表通常使用學(xué)號(hào)作為主鍵,學(xué)號(hào)就代表了學(xué)生的所有信息。當(dāng)Where語句中使用了全主鍵時(shí),就是代表了一個(gè)特定的對(duì)象。在Where語句中使用普通字段或部分主鍵時(shí),需要注意這些字段的語義并做相應(yīng)的處理。現(xiàn)在思考一下如何從學(xué)生表中找到所有男生的名單:
通過給性別建立索引可實(shí)現(xiàn)高效的辦法。這個(gè)索引的賦予性別字段的語義就是讓男生和女生分別站隊(duì)。
使用Join語句時(shí),要抓住相互組合的數(shù)據(jù)表在語義上的關(guān)系。再以學(xué)生表為例,這次我們增加一個(gè)成績表。我們想找出平均成績80分以上的學(xué)生名單。在這個(gè)需求中抽出的對(duì)象是學(xué)生表,但是學(xué)生表中沒有平均成績的屬性,需要用成績表算出來。從語義的角度來看,要先做一個(gè)平均成績表,從中選出80分以上的學(xué)號(hào),同學(xué)生表組合即可。可以看出由于學(xué)生表中缺少了平均成績字段,我們只好先做一個(gè)平均成績表,這種做法效率不高。最好的辦法是在學(xué)生表中加入平均成績字段,在登錄學(xué)生成績的同時(shí),順便把學(xué)生表也更新了。這樣就可以用這樣的方法選出學(xué)生了:
上面兩個(gè)例子試圖說明寫好SQL文的關(guān)鍵是明確語義的關(guān)系。很多時(shí)候數(shù)據(jù)表的設(shè)計(jì)并不理想,經(jīng)常出現(xiàn)使用復(fù)雜SQL文重新組合出所需的字段的情形,這時(shí)候,要抓住目標(biāo)對(duì)象的語義,排除所有多余的操作才能讓SQL簡潔易懂。
如何更好的學(xué)習(xí)和理解SQL及語法?
首先找一兩本比較好的書籍比如sql必知必會(huì)的第四版。
其次一些比較好的學(xué)習(xí)網(wǎng)站如菜鳥教程。
http://www.runoob.com/sql/sql-tutorial.html
最后就是自己多多練習(xí),實(shí)踐,實(shí)戰(zhàn)。多去itpub上幫別人寫語句或看別人寫語句(當(dāng)年國內(nèi)牛X的數(shù)據(jù)庫人都知道她)。
http://www.itpub.net/forum-3-1.html
0
回答0
回答0
回答0
回答5
回答0
回答0
回答0
回答0
回答0
回答