• SQL小知识


    1. SQL 查询大小写

       collate Chinese_PRC_CS_AS :查询区分大小写;

       Chinese_PRC_CS_AI_WS:查询不区分大小写;(默认情况下,SQL SERVER查询不区分大小写

    2. SQL返回在当前会话中的任何表内所生成的最后一个标识值。
       SCOPE_IDENTITY():只返回插入到当前作用域中的值

        @@IDENTITY :不受限于特定的作用域

    3.SQL返回操作数据受影响的行数

        @@rowcount SQL查询获取受影响的数据行数

    4.快速保存两个日期的年月到数据表

    --查询两个日期之间的年月
     declare @StartDate1 datetime; set @StartDate1='2018-07-01'
     declare @EndDate1 datetime; set @EndDate1='2019-03-01'
     select year(dateadd(month,num,@StartDate1)) as year1,month(dateadd(month,num,@StartDate1)) as month1 
     FROM (SELECT ROW_NUMBER() OVER (ORDER BY ID)-1 AS num FROM sysobjects) KK  
     where dateadd(month,num,@StartDate1) <=@EndDate1  
     
    

    5. SQL内置函数 (CHARINDEX) 

    说明:用于查找字符串A中是否包含字符串B。返回值是字符串B在字符串A中的位置(计数从1开始),若B中没有A,则返回0

    基本语法如下

    CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )

      1. expressionToFind :目标字符串,就是想要找到的字符串,最大长度为8000 。
      2. expressionToSearch :用于被查找的字符串。
      3. start_location:开始查找的位置,可为空(为空时默认从第一位开始查找)

    返回值是从首位字符开始计数。

          示例如下: 

    --简单用法
    select charindex('test','this Test is Test')
    --增加开始位置
    select charindex('test','this Test is Test',7)
    --大小写敏感
    select charindex('test','this Test is Test'COLLATE Latin1_General_CS_AS)
    --大小写不敏感
    select charindex('Test','this Test is Test'COLLATE Latin1_General_CI_AS)

    6.SQL内置函数(PATINDEX

        和CHARINDEX类似,PATINDEX也可以用来判断一个字符串中是否包含另一个字符串,两种的差异在于,前者是全匹配,后者支持模糊匹配。

        示例如下:

    --示例
     select PATINDEX('%ter%','interesting data')
     select PATINDEX('%t_ng%','interesting data')
  • 相关阅读:
    jsp完成页面自动刷新
    ssm整合案例
    MySql 里的IFNULL、NULLIF和ISNULL用法
    数据库优化
    数据库读写并发控制
    solr入门
    AngularJS入门(一)
    jsp和html的的区别
    Docker 网络(十一)
    Docker 容器资源隔离 namespace(十)
  • 原文地址:https://www.cnblogs.com/suflowers1700218/p/11202027.html
Copyright © 2020-2023  润新知