zoukankan      html  css  js  c++  java
  • 在 SQL Server 2K 中实现 大小写敏感的查询条件(WHERE ...),类似 Access(VB) 的 StrComp 函数

    --创建如下用户自定义函数(UDF)

    CREATE FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
    --ALTER FUNCTION StrComp(@Str1 VARCHAR(50),@Str2 VARCHAR(50))
    RETURNS INTEGER
    AS
    BEGIN
      DECLARE @i INTEGER
      --DECLARE @Str1 VARCHAR(50)
      --DECLARE @Str2 VARCHAR(50)
      DECLARE @y INT
      --SET @Str1='a'
      --SET @Str2='A'
      SET  @i=0
      --SELECT ASCII(SUBSTRING(@Str1,@i+1,1))
      SET @y=1
      DECLARE @iLen INT
      SET @iLen = LEN(LTRIM(RTRIM(@Str1)))
      IF LEN(LTRIM(RTRIM(@Str1))) < LEN(LTRIM(RTRIM(@Str2))) --THEN
         SET @iLen = LEN(LTRIM(RTRIM(@Str2)))
      WHILE (@i < @iLen)
        BEGIN
          IF (ASCII(SUBSTRING(@Str1,@i+1,1))=ASCII(SUBSTRING(@Str2,@i+1,1))) --THEN
             SET @i = @i +1
          ELSE
             BEGIN
               SET @y=0
               BREAK
             END
          END
         RETURN @y
    END

    测试:
    select *
    from Table1
    Where dbo.StrComp(Field1,'aAbB') =1

  • 相关阅读:
    Elasticsearch 深入5
    Elasticsearch 深入4
    Elasticsearch 深入3
    Elasticsearch 深入2
    Elasticsearch1简单深入
    Kibana简单操作Elasticsearch
    什么是非阻塞同步?
    面向对象之思考
    使用spring代码中控制事务
    mybatis 中使用oracle merger into
  • 原文地址:https://www.cnblogs.com/Microshaoft/p/2485792.html
Copyright © 2011-2022 走看看