• SQL SERVER 数据库常用SQL用法


    查找某列数据包含某一字符串:

    SELECT * FROM table WHERE column LIKE  '%string%'

    查找某列数据以某些字符串开头:

    SELECT * FROM table WHERE column LIKE '[string]%'

    查找某列数据不包含某一字符串

    SELECT * FROM table WHERE column NOT LIKE '%string%'

    替换某字段中的部分字符串

    UPDATE table SET column = REPLACE(column, 源字符串,目标字符串) 

    使用 B 表中的数据更新到 A 表中

    方法①:UPDATE tableA SET columnA = tableB.columnB FROM tableA inner join tableB on tableA.ID = tableB.ID where columnC='条件'
    方法②:UPDATE tableA SET columnA = tableB.columnB FROM tableA,tableB where tableA.ID = tableB.ID and columnC='条件'

    删除表中数据(并且会清除主键标识)

    TRUNCATE TABLE tablename

    子查询 WITH  AS 用法

    WITH temptable AS (SELECT * FROM table WHERE column = '查询条件')
    
    SELECT * FROM temptable 

    创建非聚合索引

    CREATE NONCLUSTERED INDEX index_name ON table (column)

    查询表中两行数据某字段值是否重复

    select column from table group by column having count(column) > 1

    将表A的数据写入表B中

    INSERT INTO B  SELECT * FROM A;

    ROW_NUMBER() 的用法,以下是根据 ColumnName1 进行编号,编号所在列名为 NewColumnName:

      SELECT 
            ROW_NUMBER() over(PARTITION BY ColumnName1 ORDER BY ColumnName1 asc,ColumnName2 asc) as NewColumnName, 
            ColumnName1
         FROM TableName

    检索语句的执行顺序: 

    select>where> group by> having>order by

    字符串第一个字符是字母的,可在 SQL 使用下列判断语句:

    ascii(left(columnName, 1)) > 65

    查询数据库中死锁

    select    
        request_session_id spid,   
        OBJECT_NAME(resource_associated_entity_id) tableName    
    from    
        sys.dm_tran_locks   
    where    
        resource_type='OBJECT' 

    杀死死锁进程

    Kill 进程ID

    修改列的类型定义

    alter tablealter column 列名 类型

    修改列名称

    alter table 表名 rename column 源列名 to 目标列名

    追加新列

    alter table 表名 add 新列名 列类型 (列默认值)

    判断数据库表是否存在

    if exists (select * from sysobjects where id = object_id(N'DB.dbo.[Table_Name]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

    DateAdd(datepart, number, date) 

    number: 数值,可以是负数

    date: 合法的日期

    datepart:

      年:yy,yyyy

      季度 :qq, q

      月: mm, m

      年中的日 :dy, y

      日 :dd, d

      周 :wk, ww

      星期 :dw, w

      小时 :hh

      分钟 :mi, n

      秒 :ss, s

      毫秒 :ms

      微妙 :mcs

      纳秒 :ns

  • 相关阅读:
    [转]用异或交换两个整数的陷阱
    线索化二叉树
    [转]Socket编程中,阻塞与非阻塞的区别
    两个链表的归并
    [转] std::string and stl 算法
    类图
    leetcode 答案
    about raw socket
    54. Spiral Matrix【数组】
    矩阵乘法问题的实现
  • 原文地址:https://www.cnblogs.com/daochangone/p/9121878.html
Copyright © 2020-2023  润新知