真的不知道我写了这么多不同的的学习笔记又没用。。开始SQL零基础学习笔记

 

百度百科:SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。

一个数据库通常包含一个或多个表,表包含代有数据的记录,在SQL记录为行。

注:SQL语句大小写不敏感。

1.提取数据

很重要的一个语句:select.

假设从Administrator选取所有的列

  1. Select * from Administrator  


 

1.1WHERE语句

只在Administrator中搜索admin

  1. Select * from Administrator where user='admin'  


 

附:

SQL语句之where运算符
Where子句设置查询条件,过滤掉不需要的数据行。例如下面语句查询年龄大于20的数据: 

   

  1. Select * FROM usertable  Where age>20   





Where子句可包括各种条件运算符: 
   
  比较运算符(大小比较):>、>=、=、<、<=、<>、!>、!< 
  范围运算符(表达式值是否在指定的范围):BETWEEN…AND… 
  NOT BETWEEN…AND… 
  列表运算符(判断表达式是否为列表中的指定项):IN (项1,项2……) 
  NOT IN (项1,项2……) 
  模式匹配符(判断值是否与指定的字符通配格式相符):LIKE、NOT LIKE 
  空值判断符(判断表达式是否为空):IS NULL、NOT IS NULL 
  逻辑运算符(用于多条件的逻辑连接):NOT、AND、OR 
   
1、范围运算符例:age BETWEEN 10 AND 30相当于age>=10 AND age<=30 
   
2、列表运算符例:country IN (’Germany’,’China’) 
   
3、模式匹配符例:常用于模糊查找,它判断列值是否与指定的字符串格式相匹配。可用于char、varchar、text、ntext、datetime和smalldatetime等类型查询。 
   
可使用以下通配字符: 
   
  百分号%:可匹配任意类型和长度的字符,如果是中文,请使用两个百分号即%%。 
   
  下划线_:匹配单个任意字符,它常用来限制表达式的字符长度。 
   
  方括号[]:指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。[^]:其取值也[] 相同,但它要求所匹配对象为指定字符以外的任一个字符。 

     比如 SELECT * FROM [user] WHERE u_name LIKE ’[张李王]三’ 
     将找出“张三”、“李三”、“王三”(而不是“张李王三”); 

     如 [ ] 内有一系列字符(01234、abcde之类的)则可略写为“0-4”、“a-e” 
     SELECT * FROM [user] WHERE u_name LIKE ’老[1-9]’ 
     将找出“老1”、“老2”、……、“老9”; 
   
例如: 
   
  限制以Publishing结尾,使用LIKE ’%Publishing’ 
   
  限制以A开头:LIKE ’[A]%’ 
   
  限制以A开头外:LIKE ’[^A]%’ 
   
4、空值判断符例Where age IS NULL 
   
5、逻辑运算符:优先级为NOT、AND、OR 

SQL模糊查询,使用like比较关键字,加上SQL里的通配符,请参考以下:  
1、LIKE’Mc%’ 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。  
2、LIKE’%inger’ 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。  
3、LIKE’%en%’ 将搜索在任何位置包含字母 en 的所有字符串(如 Bennet、Green、McBadden)。  
4、LIKE’_heryl’ 将搜索以字母 heryl 结尾的所有六个字母的名称(如 Cheryl、Sheryl)。  
5、LIKE’[CK]ars[eo]n’ 将搜索下列字符串:Carsen、Karsen、Carson 和 Karson(如 Carson)。  
6、LIKE’[M-Z]inger’ 将搜索以字符串 inger 结尾、以从 M 到 Z 的任何单个字母开头的所有名称(如 Ringer)。  
7、LIKE’M[^c]%’ 将搜索以字母 M 开头,并且第二个字母不是 c 的所有名称(如MacFeather)。

2.如何选取Persons中的“Firstname”?

  1. Select Firstname from Persons