zoukankan      html  css  js  c++  java
  • Sqlserver Functions

    USE [DB]
    GO
    /******   ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Procedure Name: ADDDOUBLEQUAT
    -- Description : 文字列をダブルクォーテーションで括る
    -- Parameters : @paradata
    -- Returns : 0 
    -- For Examples : dbo.ADDDOUBLEQUAT
    -- @paradata = 'ABC'
    -- Note :
    -- =============================================
    CREATE
    FUNCTION [dbo].[ADDDOUBLEQUAT]

    (
    @paradata varchar(2000)
    )
    RETURNS VARCHAR(2002)
    AS
    BEGIN
    DECLARE @return varchar(2002) 

    IF(@paradata is NULL)
    BEGIN
    SET @return ='""'
    END
    ELSE
    BEGIN
    SET @return = '"' + REPLACE(@paradata,'"','""') + '"'
    END

    return @ret

    END


    -- =============================================
    -- Procedure Name: CONVMONEY_FP0
    -- Description : カンマ区切りで小数点以下0桁の文字列にする
    -- Parameters : @paradata
    -- Returns : 0
    -- For Examples : EXCUTE CONVMONEY_FP0
    -- @paradata = 1000000
    -- Note :
    -- =============================================
    CREATE FUNCTION [dbo].[CONVMONEY_FP0]
    (
    @paradata decimal(9,0)
    )
    RETURNS VARCHAR(30)
    AS
    BEGIN
    DECLARE @ret varchar(30) 

    SET @ret = REPLACE(CONVERT(VARCHAR,CONVERT(MONEY,@paradata), 1),'.00','')
    return @ret
    END

    -- =============================================
    -- Procedure Name: CONVMONEY_FP3
    -- Description : カンマ区切りで小数点以下3桁の文字列にする
    -- Parameters : @paradata
    -- Returns : 0
    -- For Examples : EXCUTE CONVMONEY_FP3
    -- @paradata = 1000000
    -- Note :
    -- =============================================
    ALTER FUNCTION [dbo].[CONVMONEY_FP3]
    (
    @paradata decimal(9,3)
    )
    RETURNS VARCHAR(30)
    AS
    BEGIN
    DECLARE @ret varchar(30) --戻り値
    DECLARE @mindata decimal(3,3) --小数点以下部分
    DECLARE @plusdata int --整数部分

    SET @plusdata =FLOOR(@paradata)
    SET @mindata = @paradata - @plusdata
    SET @ret = REPLACE(CONVERT(VARCHAR,CONVERT(MONEY,@plusdata),1), '.00', '')+ REPLACE(CONVERT(VARCHAR,@mindata), '0.', '.')
    return @ret
    END

     
  • 相关阅读:
    一些智力题
    17分钟过桥问题
    快排的非递归实现
    单链表逆置
    实现所有括号的合法匹配
    2013阿里笔试题
    Hadoop学习笔记—14.ZooKeeper环境搭建
    Hadoop学习笔记—15.HBase框架学习(基础知识篇)
    Hadoop学习笔记—13.分布式集群中节点的动态添加与下架
    Hadoop学习笔记—11.MapReduce中的排序和分组
  • 原文地址:https://www.cnblogs.com/RocCnBlog/p/4118375.html
Copyright © 2011-2022 走看看