数据采集中常用的SQL语句及技巧
数据采集中常用的SQL语句
相同的SQL语句运用到不同数据库中会有略微的差别,对字符变量的要求,相关函数的变化,以及语法规则的不同等等,例如:oracle数据库中对字段命名别名时不需要as 字符,没有month(),year()等时间函数等等,access数据库中在使用inner join执行内部联合时条件需用(),当然还有很多的细微差别,大家可以自己去寻找总结。下面的示例以SQL SERVER为基础编写。
1. 抽取非重复数据
select distinct var1 from tableName;
2. 抽取某个时间段间的数据
select var1,var2 from 数据表 where 字段名 between 时间1 and 时间2;
3. 连接多个变量
select '123'+cast(456 as varchar);
select '123'+cast(456 as varchar)+'789';
4. 用SQL语句找出表名为Table1中的处在ID字段中1-200条记录中Name字段包含w的所有记录
select * from Table1 where id between 1 and 200 and Name like '%w%';
5. 找出拥有超过10名客户的地区的列表
select country from test group by country having count(customerId)>10;
6. 关于取出每个部门工资最高的前三人
select * from table t where 工资 in (select top 3 工资 from table where 部门 = t.部门 order by 工资 desc);
7. 两个结构完全相同的表a和b,主键为index,使用SQL语句,把a表中存在但在b表中不存在的数据插入的b表中
insert into b select * from a where not exists(select * from b where "index"=a."index");
8.从一个数据库中的多个数据表提取相关变量
Select table1.var1,table2.var2,table2.var3,
from table1 inner join table2
On tabel1.var1=table2.var1
Inner join table3
On tabel1.var2=table3.var2
(order by ……)
SQL查询相关小技巧
·使用AND时,将不为真的条件放在前面
数据库系统遵循运算符的优先级,并且运算过程是从左至右的,将条件不为真的放在前面,则能够省去and后面的相关运算,以达到减少数据库系
相关文档:
数据库表设计时如果设置可以为null,则它就不会变为'1900-1-01'
如果设计时不可以为null,它就会默认为: '1900-01-01'
CREATE proc UP_Rsk_AddModel @ygcode varchar(6), @name varchar(8), @xb varchar(2), @bm varchar(32), @jg varchar(16), @mz varchar(16) ......
weblogic8.1没有带SQL Server 2005的JDBC驱动,需要去微软网站下载。
地址:http://msdn.microsoft.com/vstudio/express/sql/download/
启动 SQL Server Configuration manager,展开SQL Server 2005
网络配置,单击“MSSQLSERVER的协议&rdqu ......
目的:将数据批量导入远程服务器
环境:SQL软件,EXCEL软件,VS2005软件,本地两个机器上都有SQL数据库,而且数据存放在其中一个表。
操作实践
1、用远程数据库的ip、用户名、密码在本地登录;
2、结果,其中一个机器能登录,一个不能登录(以下操作在可登录的机器上完成);
3、第一次我想通 ......
创建的数据库中区分大小写
create database test COLLATE Chinese_PRC_CS_AS
数据库中区分大小写
alter database test COLLATE Chinese_PRC_CS_AS
恢复默认的不区分大小写
alter database test COLLATE Chinese_PRC_CI_AS ......