sql一些常用的方法

 

None.gif 1 :执行另一服务器上的存储过程
None.gif
None.gif
exec   OPENDATASOURCE (
None.gif         
' SQLOLEDB ' ,
None.gif         
' Data Source=远程ip;User ID=sa;Password=密码 '
None.gif         ).库名.dbo.存储过程名
None.gif
None.gif
2 :将资料插入另一服务器上的表中
None.gif
None.gif
select   *   into  本地库名..表名  from   OPENDATASOURCE (
None.gif         
' SQLOLEDB ' ,
None.gif         
' Data Source=远程ip;User ID=sa;Password=密码 '
None.gif         ).库名.dbo.表名
None.gif
None.gif
insert  本地库名..表名  select   *   from   OPENDATASOURCE (
None.gif         
' SQLOLEDB ' ,
None.gif         
' Data Source=远程ip;User ID=sa;Password=密码 '
None.gif         ).库名.dbo.表名
None.gif
None.gif或使用联结服务器:
None.gif
EXEC  sp_addlinkedserver  ' 别名 ' , '' , ' MSDASQL ' , NULL , NULL , ' DRIVER={SQL Server};SERVER=远程名;UID=用户;PWD=密码; '
None.gif
None.gif
None.gif
exec  sp_addlinkedsrvlogin   @rmtsrvname = ' 别名 ' , @useself = ' false ' , @locallogin = ' sa ' , @rmtuser = ' sa ' , @rmtpassword = ' 密码 '
None.gif
GO
None.gif
None.gif(请注意上面的两步要同时运行)
None.gif
None.gif
None.gif然后你就可以如下:
None.gif
select   *   from  别名.库名.dbo.表名
None.gif
insert  库名.dbo.表名  select   *   from  别名.库名.dbo.表名
None.gif
select   *   into  库名.dbo.新表名  from  别名.库名.dbo.表名
None.gif
go
None.gif
None.gif
None.gif 
None.gif
None.gif
3 :
None.gif
None.gif如果在事务里使用连接服务器要加上
None.gif
None.gif分布式事务:
None.gif两边启动dtc
None.gif
None.gif
set   XACT_ABORT  on
None.gif
set  ANSI_NULL_DFLT_ON  on
None.gif
set  ANSI_WARNINGS  on  
None.gif
None.gif
BEGIN   DISTRIBUTED   TRANSACTION
None.gif
select   *    from   OPENDATASOURCE ( ' MSDASQL ' , ' DRIVER={SQL Server};SERVER=ip;UID=sa;PWD=密码; ' ).pubs.dbo.jobs
None.gif
commit   tran
None.gif 
None.gif
None.gif
select  stockinid,stockindt  from  stockin  as  a  where  a.stockinid  in  ( select  b.stockinid  from  stockindta  as  b)
None.gif
CONVERT ( varchar ,p.end_date, 121 )
None.gif  函数 
CONVERT ( ) 带有两个变量。第一个变量指定了数据类型和长度。第二个变量指定了要进行转换的字段。
None.gif  
SELECT   CONVERT ( varchar ( 30 ), getdate (), 101 ) now
None.gif
None.gif  
< ! -- StartFragment-->CONVERT的使用方法:
None.gif

None.gif

None.gif
None.gif格式:
None.gif
CONVERT (data_type,expression [ ,style ] )
None.gif
None.gif说明:
None.gif此样式一般在时间类型(
datetime , smalldatetime )与字符串类型( nchar , nvarchar , char , varchar )
None.gif相互转换的时候才用到.
None.gif
None.gif例子:
None.gif
SELECT   CONVERT ( varchar ( 30 ), getdate (), 101 ) now
None.gif结果为
None.gifnow
None.gif
-- -------------------------------------
None.gif
09 / 15 / 2001
None.gif
None.gif
/
None.gif
None.gifstyle数字在转换时间时的含义如下
None.gif
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
Style(2位表示年份)    |   Style(4位表示年份)     |    输入输出格式                                    
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
-                      |    0   or   100                |    mon dd yyyy hh:miAM(或PM)              
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
1                      |    101                     |    mm / dd / yy                                       
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
2                      |    102                     |    yy - mm - dd                                        
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
3                      |    103                     |    dd / mm / yy                                       
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
4                      |    104                     |    dd - mm - yy                                        
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
5                      |    105                     |    dd - mm - yy                                        
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
6                      |    106                     |    dd mon yy                                        
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
7                      |    107                     |    mon dd,yy                                        
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
8                      |    108                     |    hh:mm:ss                                         
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
-                      |    9   or   109                |    mon dd yyyy hh:mi:ss:mmmmAM(或PM)
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
10                     |    110                     |    mm - dd - yy                                         
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
11                     |    111                     |    yy / mm / dd                                        
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
12                     |    112                     |    yymmdd                                           
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
-                      |    13   or   113               |    dd mon yyyy hh:mi:ss:mmm(24小时制)  
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
14                     |    114                     |    hh:mi:ss:mmm(24小时制)                    
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
-                      |    20   or   120               |       yyyy - mm - dd hh:mi:ss(24小时制)         
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif
-                      |    21   or   121               |       yyyy - mm - dd hh:mi:ss:mmm(24小时制) 
None.gif
-- -----------------------------------------------------------------------------------------------
None.gif

None.gif
-- ------数学函数 
None.gif
   1 .绝对值 
None.gif  S:
select   abs ( - 1 ) value
None.gif  O:
select   abs ( - 1 ) value  from  dual
None.gif
None.gif  
2 .取整(大) 
None.gif  S:
select   ceiling ( - 1.001 ) value 
None.gif  O:
select  ceil( - 1.001 ) value  from  dual
None.gif
None.gif  
3 .取整(小) 
None.gif  S:
select   floor ( - 1.001 ) value 
None.gif  O:
select   floor ( - 1.001 ) value  from  dual
None.gif
None.gif  
4 .取整(截取)
None.gif  S:
select   cast ( - 1.002   as   int ) value 
None.gif  O:
select  trunc( - 1.002 ) value  from  dual 
None.gif
None.gif  
5 .四舍五入
None.gif  S:
select   round ( 1.23456 , 4 ) value  1.23460
None.gif  O:
select   round ( 1.23456 , 4 ) value  from  dual  1.2346
None.gif
None.gif  
6 .e为底的幂 
None.gif  S:
select   Exp ( 1 ) value  2.7182818284590451  
None.gif  O:
select   Exp ( 1 ) value  from  dual  2.71828182
None.gif
None.gif  
7 .取e为底的对数
None.gif  S:
select   log ( 2.7182818284590451 ) value  1
None.gif  O:
select  ln( 2.7182818284590451 ) value  from  dual;  1
None.gif
None.gif  
8 .取10为底对数
None.gif  S:
select   log10 ( 10 ) value  1
None.gif  O:
select   log ( 10 , 10 ) value  from  dual;  1
None.gif
None.gif  
9 .取平方
None.gif  S:
select   SQUARE ( 4 ) value  16
None.gif  O:
select   power ( 4 , 2 ) value  from  dual  16
None.gif
None.gif  
10 .取平方根
None.gif  S:
select   SQRT ( 4 ) value  2
None.gif  O:
select   SQRT ( 4 ) value  from  dual  2
None.gif
None.gif  
11 .求任意数为底的幂
None.gif  S:
select   power ( 3 , 4 ) value  81
None.gif  O:
select   power ( 3 , 4 ) value  from  dual  81
None.gif
None.gif  
12 .取随机数
None.gif  S:
select   rand () value 
None.gif  O:
select  sys.dbms_random.value( 0 , 1 ) value  from  dual;
None.gif
None.gif  
13 .取符号
None.gif  S:
select   sign ( - 8 ) value  - 1
None.gif  O:
select   sign ( - 8 ) value  from  dual  - 1
None.gif  
-- --------数学函数
None.gif

None.gif  
14 .圆周率
None.gif  S:
SELECT   PI () value  3.1415926535897931
None.gif  O:不知道
None.gif
None.gif  
15 . sin , cos , tan  参数都以弧度为单位
None.gif  例如:
select   sin ( PI () / 2 ) value 得到1(SQLServer)
None.gif
None.gif  
16 . Asin , Acos , Atan ,Atan2 返回弧度
None.gif
None.gif  
17 .弧度角度互换(SQLServer,Oracle不知道)
None.gif  
DEGREES :弧度 - 〉角度
None.gif  
RADIANS :角度 - 〉弧度
None.gif
None.gif  
-- -------数值间比较
None.gif

None.gif  
18 . 求集合最大值
None.gif  S:
select   max (value) value  from  
None.gif  (
select   1  value
None.gif  
union
None.gif  
select   - 2  value
None.gif  
union
None.gif  
select   4  value
None.gif  
union
None.gif  
select   3  value)a
None.gif
None.gif  O:
select  greatest( 1 , - 2 , 4 , 3 ) value  from  dual
None.gif
None.gif  
19 . 求集合最小值
None.gif  S:
select   min (value) value  from  
None.gif  (
select   1  value
None.gif  
union
None.gif  
select   - 2  value
None.gif  
union
None.gif  
select   4  value
None.gif  
union
None.gif  
select   3  value)a
None.gif
None.gif  O:
select  least( 1 , - 2 , 4 , 3 ) value  from  dual
None.gif
None.gif  
20 .如何处理null值(F2中的null以10代替)
None.gif  S:
select  F1, IsNull (F2, 10
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值