日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

MYSQL必知必會

 wangboroy 2012-10-06
mysql客戶端工具:mysql mysql administration mysql query browers
describe table /show grants
(1)檢索數(shù)據(jù):select A,B from table (distinct A ,limit a,b。table從0行開始,(C1-C2) as C)
(2)排序檢索數(shù)據(jù):select A,B from table order by column C DESC/ASC,D DESC/ASC(先C,C一樣才按D排序。DESC降序,ASC升序)
(3)過濾數(shù)據(jù)(適用于已知值):where 子句。 = 、<>、!=、<、<=、> 、>=、between 、is null 。where子句與AND OR IN NOT組合(mysql中NOT 支持對IN BETWEEN EXISTS取反。IN取的合法值放在括號內(nèi),用逗號隔開 in (a,b) )
(4)用通配符進行過濾(適用于不確定值,用like):a.  %通配符表示任何字符出現(xiàn)任意次數(shù) b. _匹配單個字符   (雖然很常用,由于搜索速度慢,不能過度使用通配符,如果使用也最好不要放在搜索模式的開始處)
(5)使用正則表達式進行搜索(更強大匹配,用REGEXP):a. regexp 'string'   b.進行OR匹配  regexp 'string1 | string2'  c.匹配幾個字符之一,[123] ('[123] ton') ,[^123]匹配除這幾個字符之外的字符  d.匹配范圍:[0-9]
e.匹配特殊字符,匹配特殊字符需要兩個/ ,如//.  /// 等  f.定位符(^文本開始,$文本結(jié)束):(^[0-9//.],匹配以0-9或.開頭的字符串 。
(6)創(chuàng)建計算字段:a.拼接字段contact:contact(A,'(',B,')')等  b.使用別名A*B as C
(7)使用數(shù)據(jù)處理函數(shù):文本處理函數(shù),日期和時間處理函數(shù)(日期時間數(shù)據(jù)格式。date(),time()),數(shù)值處理函數(shù)。
(8)匯總數(shù)據(jù):聚集函數(shù)——AVG(),COUNT(),MAX(),MIN(),SUM()   COUNT(*) /COUNT(column) 靈活使用聚集函數(shù),返回需要的值。聚集函數(shù)與distinct一起使用,對所有的行執(zhí)行計算,當指定distinct時,只包含不同的值。還可以組合聚集函數(shù)來得到想要的的搜索結(jié)果。as
(9)分組數(shù)據(jù)(對結(jié)果進行分組):創(chuàng)建分組——group by(可以包含多列,出聚集函數(shù)語句外,select中的每個列都必須在group by中給出,where之后,order by之前。表達式不能用別名)。group by僅在按組計算聚集時使用
  過濾分組(排除分組)——having(where過濾指定的是行,不是分組,having過濾分組,但having支持where的所有操作,或可以理解為where在分組前進行過濾,having在分組后進行過濾)
如下例:列出具有2個(含2個)以上、價格為10以上的產(chǎn)品的供應(yīng)商。  分清楚行的概念和分組的概念
select vent_id,count(*) as num_prods
from products
where prod_price >=10
group by vent_id                                
having count(*) >=2 

select 字句順序:select    from   where   group by    having  order by   limit
(10)使用子查詢:子查詢經(jīng)常用于多個關(guān)系表的查詢,一般是在where中使用in語句來實現(xiàn)子查詢,也可以使用=  <>。也可以對計算字段(count等)使用子查詢(select count(*)等)
(11)聯(lián)結(jié)表:分解數(shù)據(jù)位多個表能更有效地進行存儲,更方便的處理,但是由于數(shù)據(jù)在多個表中,使用單條select語句進行檢索時需要使用聯(lián)結(jié)。聯(lián)結(jié)條件放在where子句中
。一條select語句中可以聯(lián)結(jié)多個表,但是聯(lián)結(jié)的表越多,性能下降越厲害。子查詢可以用聯(lián)結(jié)查詢來代替,可能會提高效率。
 (13)創(chuàng)建高級聯(lián)結(jié)(對表使用別名):自聯(lián)結(jié):自聯(lián)結(jié)一般要比子查詢快。自然聯(lián)結(jié)、外部聯(lián)結(jié)(需要沒有關(guān)聯(lián)行的那些行,內(nèi)部聯(lián)結(jié)就是普通的關(guān)聯(lián)聯(lián)結(jié)。沒關(guān)聯(lián)指的是查詢數(shù)據(jù)為NULL,就得使用外部聯(lián)結(jié))也可以使用帶聚集函數(shù)的聯(lián)結(jié)   對某組或某類使用聚集函數(shù)時,需要使用group by。
 (14)組合查詢UNION :把多條查詢結(jié)果作為一條組合查詢返回,所以UNION每個查詢需要包含相同的列,表達式或者聚集函數(shù),order by放最后select之后。
 (15)全文本(text格式)搜索:數(shù)據(jù)庫常用引擎,MyISAM(支持全文本搜索)、InnoDB(不支持全文本搜索)。
     使用全文本搜索:在創(chuàng)建表時使用fulltext建立索引,在create之外用engine=mylsam表明為mylsam引擎;進行全文搜索時在where中使用match()和against()函數(shù)。match()中指定被搜索(索引)的列,against中指定要使用的搜索表達式。輸出結(jié)果的等級。
   查詢擴展:against('表達式’ ,with query expansion)
   布爾文本搜索:
(16)插入操作 :插入完整行  插入檢索出的數(shù)據(jù)(不用values) 更行刪除數(shù)據(jù):先用select檢驗是否是需要處理的數(shù)據(jù)
(17)創(chuàng)建、更行、刪除表。創(chuàng)建:auto_increment (需要設(shè)定為主鍵,primary key)  default 1  null  not null   
(18)數(shù)據(jù)類型:串:char(n)定長  varchar(n) 可變長  text 小宇64K  數(shù)值類型:int  bllolen float double decimal(精度可變的浮點值)  日期和時間:date  time datetime year 
二進制數(shù)據(jù)類型:blob
其他:w3school
uninon all


mysql備份:
在shell下:
mysqldump -h mysql_master -u wms -p wms weiyou_group > weiyou_group.sql

還原:一般用source命令
mysql中:
source  ./weiyou_group.sql
















    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多