SQL 学习
2013-01-15 21:20 VVG 阅读(326) 评论(0) 编辑 收藏 举报注:SQL语句对大小写不敏感,但数据库中的数据却是大小写敏感的。 蓝色的文字是关键字!!
1、查询——SELECT 语句
SELECT NAME, STARTTERM, ENDTERM FROM PRESIDENTS WHERE NAME = 'CINCOLN';
-------- 列 名 列 名 列 名 ----- 表 名 ----- 条 件 语 句 ----------
查看不重复数据:
select DISTINCT amount from checks;
2、表达式、条件语句与运算
SELECT * FROM BIKES WHERE NAME = 'BURLEY'
运算是需要对从数据库中返回的数据进行数学处理时所用到的运算,可归为六组:数值型,比较型,字符型,逻辑型和备注型以及混合型;
举个栗子:
SELECT ITEM,WHOLESALE,WHOLESALE + 0.15 FROM PRICE;
计算+别名:
SELECT ITEM,WHOLEASALE,(WHOLESALE + 0.15) DIYNAME FROM PRICE; -- 也可以不用括号,计算可以使用加减乘除取模(+ - * / %)
查询空值:
SELECT * FROM PRICE WHERE WHOLESALE IS NULL; --而不使用“=” ;相反非空值为 IS NOT NULL;
比较:
SELECT * FROM FRIENDS WHERE AREACODE > 300; --查询大于300的记录 比较符号(> = < != <> >= =<)
LIKE语句:
SELECT * FROM PARTS WHERE LOCATION LIKE '%BACK%'; --查询含有BACK这几个字符的数字
% 是一种通配符,表任意值,比如A开头的为 A%
_ 下划线,表示任意一个字符,只占一位,如C开头的两位数:C_ ;也可以使用多个下划线如: W_E_E 可以匹配WHERE ; _L% 表示所有第2个字母为L的记录
|| 连接数据:
SELECT FIRSTNAME || LASTNAME ENTIRENAME FROM FRIENDS; -- 连接两个列 组成一个名为ENTIRENAME的列 SELECT LASTNAME || ',' || FIRSTNAME NAME FROM FRIENDS; -- 这条语句在姓与名之间插入了一个逗号。 不能使用+号连接,会出错
AND 逻辑运算:同时满足条件
OR 逻辑运算:任意一个条件满足就会返回记录。
集合运算:
重复——UNION 与 UNION ALL
UNION 返回两个查询的结果并除去重复部分:
SELECT NAME FROM SOFTBALL UNION SELECT NAME FROM FOOTBALL; --UNION ALL 包括重复的
相交——INTERSECT:返回两个表中共有的行。
SELECT * FROM FOOTBALL INTERSECT SELECT * FROM SOFTBALL;
相减——MINUS:返回的记录是存在一第一个表中,但是不存在于第二个表中的记录
SELECT * FROM FOOTBALL MINUS SELECT * FROM SOFTBALL;
从属运算:
(IN and BETWEEN)
SELECT * FROM FRIENDS WHERE STATE = 'CA' OR STATE = 'CO' OR STATE = 'LA'; -- 也可以直接如下: SELECT * FROM FRIENDS WHERE STATE IN('CA','CO','LA'); -- IN中也可以使用数字 如:*****WHERE ID IN(122,123,1234)
BTWEEN :
SELECT * FROM PRICE WHERE WHOLESALE BETWEEN 0.25 AND 0.75 -- BTWEEN 包括边界值
待续。。。
转载请注明出处:http://www.cnblogs.com/NNUF/