易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 :

SQL函数大全2

--
聚合函数
use
pubs
go
select

avg
(
distinct
price)  
--
算平均数
from
titles
where
type
=
'
business
'
go

use
pubs
go
select

max
(ytd_sales)  
--
最大数
from
titles
go

use
pubs
go
select

min
(ytd_sales)
--
最小数
from
titles
go

use
pubs
go
select
type,
sum
(price),
sum
(advance)  
--
求和
from
titles
group

by
type
order

by
type
go

use
pubs
go

select

count
(
distinct
city)  
--
求个数
from
authors
go

use
pubs
go
select

stdev
(royalty)
--
返回给定表达式中所有值的统计标准偏差
from
titles
go

use
pubs
go
select

stdevp
(royalty)
--
返回表达式中所有制的填充统计标准偏差
from
titles
go

use
pubs
go
select

var
(royalty)
--
返回所有值的统计方差
from
titles
go

use
pubs
go
select

varp
(royalty)
--
返回所有值的填充的统计方差
from
titles
go

--
数学函数 ......

hibernate执行原生Sql语句的方法(转)

http://www.thecloud.cn/study/program/java/597.html
hibernate3的HQL 是面向对象的语法,已经支持 update ,delete from语句,但
目前还不支持insert into语句.
做项目有时候的确需要写原生的sql来方便web开发.
下面是我自己鼓捣出来的方法,希望对我和朋友有所帮助.
在Dao里写一个方法,让我们在action里调用它...
 
public void InsertData(String MytblName,String
Mytitle,String Mycode,String Mycoments){
   
log.debug("insert into dataitems ---drs");
   //使用了原生sql语句
    try{
   
//将传入的类名处理成表名 例如:CTable----〉C_Table 
   
MytblName = "C_"+MytblName.substring(1,MytblName.length());
    //插入表 的
sql
 
   
String Insert_SQL ="INSERT INTO "+MytblName+
    "
(C_Title,C_Code,C_Comments)"+
    " VALUES
('"+Mytitle+"','"+Mycode+"','"+Mycoments+"')" ;
&nb ......

sql over的作用及用法


RANK ( ) OVER ( [query_partition_clause] order_by_clause )
DENSE_RANK ( ) OVER ( [query_partition_clause] order_by_clause )
可实现按指定的字段分组排序,对于相同分组字段的结果集进行排序,
其中PARTITION BY 为分组字段,ORDER BY 指定排序字段
over不能单独使用,要和分析函数:rank(),dense_rank(),row_number()等一起使用。
其参数:over(partition by columnname1 order by columnname2)
含义:按columname1指定的字段进行分组排序,或者说按字段columnname1的值进行分组排序。
例如:employees表中,有两个部门的记录:department_id =10和20
select department_id,rank() over(partition by department_id order by salary) from employees就是指在部门10中进行薪水的排名,在部门20中进行薪水排名。如果是partition by org_id,则是在整个公司内进行排名。
以下是个人见解:
sql中的over函数和row_numbert()函数配合使用,可生成行号。可对某一列的值进行排序,对于相同值的数据行进行分组排序。如下表:
执行语句:select row_number() over(order by AID DESC) as rowid,* from bb后的结果如下:
rowid标识行号有了,同时AID也按降序 ......

SQL Server 优化存储过程的七种方法

优化存储过程有很多种方法,下面介绍最常用的7种。
1.使用SET NOCOUNT ON选项
我们使用SELECT语句时,除了返回对应的结果集外,还会返回相应的影响行数。使用SET NOCOUNT ON后,除了数据集就不会返回额外的信息了,减小网络流量。
2.使用确定的Schema
在使用表,存储过程,函数等等时,最好加上确定的Schema。这样可以使SQL Server直接找到对应目标,避免去计划缓存中搜索。而且搜索会导致编译锁定,最终影响性能。比如select * from dbo.TestTable比select * from TestTable要好。from TestTable会在当前Schema下搜索,如果没有,再去dbo下面搜索,影响性能。而且如果你的表是csdn.TestTable的话,那么select * from TestTable会直接报找不到表的错误。所以写上具体的Schema也是一个好习惯。
3.自定义存储过程不要以sp_开头
因为以sp_开头的存储过程默认为系统存储过程,所以首先会去master库中找,然后在当前数据库找。建议使用USP_或者其他标识开头。
4.使用sp_executesql替代exec
原因在Inside Microsoft SQL Server 2005 T-SQL Programming书中的第四章Dynamic SQL里面有具体描述。这里只是简单说明一下:sp_executesql可以使用参数化,从而可以重用执行计划。ex ......

select sql 语句执行过程 顺序


(
8)
SELECT
(
9)
DISTINCT
(
11)
<
TOP_specification>
<
select_list>
(
1)
from
<
left_table>
(
3)
<
join_type>
JOIN
<
right_table>
(
2)
ON
<
join_codition>
(
4)
WHERE
<
where_condition>
(
5)
GROUP
BY
<
group_by_list>
(
6)
WITH
{
CUBE
|

ROLLUP}
(
7)
HAVING
<
having_condition>
(
10) ORDER
BY
<
order_by_list>
 
熟悉
SQL
的人应该一眼就能看出来上面语句的作用,基本包括了我们一般查询表的写法,
SQL
不同于其他编程语言最明显的特征就是他的代码顺训。在大多数语言中,代码按编码的顺序被处理,但在
SQL
语言中,第一个被处理的子句是
from
子句,尽管
SELECT
语句第一个出现,但几乎总是最后处理。
其实从逻辑上来说,每个步骤都会产生一个虚拟表,该虚拟表用作下一个步骤的输入(上面的标记代表执行步骤
的顺序)。
......

将excel文件中的数据导入导出至SQL数据库中

导入
如果表已存在,SQL语句为:
insert into aa select * from OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=D:\OutData.xls;Extended Properties=Excel 8.0')...[sheet1$]
其中,aa是表名,D:\OutData.xls是excel的全路径 sheet1后必须加上$
如果表不存在,SQL语句为:
SELECT * INTO aa from OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=D:\OutData.xls;Extended Properties=Excel 8.0')...[sheet1$]
其中,aa是表名,D:\OutData.xls是excel的全路径 sheet1后必须加上$
可能会发生的异常:
如果发生“链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 报错。提供程序未给出有关错误的任何信息。
无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 的数据源对象。”异常可能是excel文件未关闭.
如果发生“不能将值 NULL 插入列 'Grade',表 'student.dbo.StuGrade';列不允许有空值。INSERT 失败。
语句已终止。”异常,则可能是excel文件与数据库表中的字段不匹配
以上操作的是office 2003,如果要操作office 2007则需采用如下方式
如果表已存在,SQL语句为: ......
总记录数:40319; 总页数:6720; 每页6 条; 首页 上一页 [2423] [2424] [2425] [2426] 2427 [2428] [2429] [2430] [2431] [2432]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号