SQL点点滴滴_聪明的小写法(持续更新中)

Posted 卡卡不卡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL点点滴滴_聪明的小写法(持续更新中)相关的知识,希望对你有一定的参考价值。

1、生成序列号

  SELECT number + 1 ,number FROM master..spt_values WHERE type = ‘P‘ ORDER BY number

  说明: master..spt_values相当于一个数字辅助表,在SQL中主要用到number这个字段。经常用于计算连续的日期等。

   SELECT CONVERT(varchar(10),DATEADD(DAY,number,GETDATE()),120) AS [日期]  FROM MASTER..spt_values WHERE TYPE=‘P‘ AND number>0  

2、通过变量获取数据表的所有字段名

  DECLARE @STRSQL VARCHAR(2000)

  SET @STRSQL=‘‘  

  SELECT @STRSQL=NAME+‘,‘[email protected] FROM SYSCOLUMNS WHERE OBJECT_NAME(ID)=‘tb_o_card_deposit‘  

  PRINT LEFT(@STRSQL,LEN(@STRSQL)-1)

3、查询数据库中的表及列

  select * from information_schema.columns

  说明:当前数据库中当前用户可以访问的每一个列在该视图中占一行。INFORMATION_SCHEMA.COLUMNS 视图以 sysobjectsspt_data type_infosystypessyscolumnssyscommentssysconfigures 以及 syscharsets 系统表为基础。

4、中文排序混乱

  select col1, col2 from table order by col1 collate Chinese_PRC_CI_AS  

  说明:在SQL语句中指定排序列的collation为  Chinese_PRC_CI_AS 。

  排序规则由两部分构成,比如Chinese_PRC_CI_AI_WS,前半部分是指本排序规则所支持的字符集,如Chinese_PRC指对大陆简体字UNICODE的排序规则。

  后半部分含义如下:

  _BIN  指定使用向后兼容的二进制排序顺序。

  _BIN2  指定使用SQL Server2005中引入的码位比较语义的二进制排序顺序。

  _Stroke  按笔划排序

  _CI(CS)  是否区分大小写,CI不区分,CS区分。

  _AI(AS)  是否区分重音,AI不区分,AS区分。

  _KI(KS)  是否区分假名类型,KI不区分,KS区分。

  _WI(WS)  是否区分全半角,WI不区分,WS区分。

 

以上是关于SQL点点滴滴_聪明的小写法(持续更新中)的主要内容,如果未能解决你的问题,请参考以下文章

使用phpstom的点点滴滴记录,持续更新中...

自学Linux之每天收获一点点(持续更新中)

Easy Code探测Schema,生成聪明一点点的Mybatis代码

关于那些常见的坑爹的小bug(会持续更新)

滴滴一面:BigKey问题很致命,如何排查和处理?

一点点webservice的小知识