sql server 使用笔记。

1、(内连接 左连接 右连接 交叉连接 全连接 联合查询)
    https://blog.csdn.net/mango_love/article/details/79651243
     (1)实例 : 联合查询
        SELECT ActiveDB.DBO.T_RankingsConfig.F_Type, ActiveDB.DBO.T_RankingsConfig.F_StartTime, DataWarehouse.DBO.T_TBGoodsLog.F_UserID
        FROM ActiveDB.DBO.T_RankingsConfig,DataWarehouse.DBO.T_TBGoodsLog
        WHERE ActiveDB.DBO.T_RankingsConfig.F_ID = DataWarehouse.DBO.T_TBGoodsLog.F_UserID

2、 NULL 函数
   ISNULL(列名称,0) 参数为空的时候 取0  
   http://www.w3school.com.cn/sql/sql_isnull.asp
3、ORDER BY 用于结果集排序
   ORDER BY 列名称 ASC
   DESC 升序  ASC 降序
  http://www.w3school.com.cn/sql/sql_orderby.asp
4、SELECT DISTINCT 列名称 FROM 表名称
   可以获得的一列中,不相同参数集合
5、truncate table <表名>
   清空表格   
6、 select count(*) from 表名  
7、SQL Server 将Id相同的字段合并,并且以逗号隔开
    select USERID,stuff((select ','+convert(varchar,ROLEID) from  RURDB.dbo.MIS_UserRole
                         where A.USERID=USERID for xml path('')),1,1,'') as orgCode
    from RURDB.dbo.MIS_UserRole AS A   
    group by A.USERID
8、 删除数据 DELETE FROM [RURDB].[dbo].[rbac_organization]  WHERE pk_id = 4
9、create table tab
(
    员工编号 int,
    员工姓名 nvarchar(10),
    员工工资 int,
    上司编号 int
)    
10、
   cast(ceiling(rand() * 100) as int)  随机数   0~100 每行相等  
   cast(ceiling(rand(checksum(newid()))*20000) as int)  随机数   0~20000 每行不相等  
   cast(ceiling(rand(checksum(newid()))*20000) as int) + 10000  随机数   10000~20000 每行不相等  
11、
    exists (sql 返回结果集为真)  
    not exists (sql 不返回结果集为真)
12、sql  计算时间间隔,多少分钟
    功能
    返回两个日期之间的间隔。

    语法
    DATEDIFF ( date-part, date-expression-1, date-expression-2 )

    date-part :
    year | quarter | month | week | day | hour | minute | second | millisecond
    DATEDIFF(MINUTE,startTime,endTime)
    DATEDIFF(DAY,startTime,endTime)  
    
13、mybatis  查询 for循环以逗号分割。
     userIds = 1,2,3,4,5,6,7,8,9,10,11
    <foreach collection="userIds" item="userId" separator="," open="(" close=")" >
          #{userId}
    </foreach>

上一篇:SQL Server比较2table字段的差异


下一篇:SqlServer查看表结构语句