数据库

数据库学习02

2016-09-11  本文已影响22人  LP_ProgramLife

(1)select top 子句用于规定要返回的记录数目

从Websites 表中选取头两条记录

select * from Websites limit 2;

从websites表中选取前面50%的记录

select top 50 percent * from Websites;

(2)like操作符用于在where子句中搜索列中的指定模式

SQL 语句选取 name 以字母 "G" 开始的所有客户

select * from Websites where name Like ‘G%’;

SQL 语句选取 name 以字母 "k" 结尾的所有客户

select * from Websites where name like ‘%k’;

SQL 语句选取 name 包含模式 "oo" 的所有客户

select * from Websites Where name like ‘%oo%’

SQL 语句选取 name 不包含模式 "oo" 的所有客户

select * from Websites where name not like ‘%oo%’;

(3)in 操作符允许你在where子句中规定多个值

select * from Websites where name in(‘Google’,’菜鸟教程’);

(4)BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。

SQL 语句选取 alexa 介于 1 和 20 之间的所有网站

select * from Websites where alexa between 1 and 20;

SQL 语句选取alexa介于 1 和 20 之间但 country 不为 USA 和 IND 的所有网站

select * from Websites where (alexa between 1 and 20) and not country in (‘USA’,’IND’);

(5)通过使用 SQL,可以为表名称或列名称指定别名。

select name as n , country as c from Websites;

(6)SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。

select Websites.id,Websites.name,access_log.count,access_log.date from Websites inner join access_log on Websites.id = access_log.site_id;

(7)UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

请注意,UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 SELECT 语句中的列的顺序必须相同。

select country, name from Websites where country = ‘CN’ union all select country,app_name from apps where country = ‘cn’ order by country;

(8)SELECT INTO 语句从一个表复制数据,然后把数据插入到另一个新表中。

创建备份

select * into WebsitesBackup2016 from Websites;

只复制一些列插入到新表中

select name,url into WebsitesBackup2016 from Websites where country = ‘CN’;

复制多个表中的数据插入到新表中:

SELECT Websites.name, access_log.count, access_log.date

INTO WebsitesBackup2016

FROM Websites

LEFT JOIN access_log

ON Websites.id=access_log.site_id;

(9)INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。

复制 "apps" 中的数据插入到 "Websites" 中

insert into Websites(name,country) select app_name,country from apps;

上一篇下一篇

猜你喜欢

热点阅读