常见的sql语句 注意点及用法【区分mysql 和Sqlserver】

如何判断在字符串字段中是否包含某个字符串

  mysql> SELECT * FROM users WHERE find_in_set('2', limits);
 
  select * from [tbServerWeb]. [dbo].[tb_gameStaff] where PATINDEX('%130601%' ,[g_partnerNo])> 0 and UserID=10043;
  select * from [tbServerWeb]. [dbo].[tb_gameStaff] where charindex('130601' ,[g_partnerNo])> 0 and UserID=10043;
 
-*****************************************************************************************************************************-
 
字段判空:
Sqlserver:
  SELECT TOP 1000 icon ,*
  FROM [userapp].[dbo] .[tbiTunesNewApp]
  i left join userapp. dbo.tbUserApp u on i .appid= u.id
   where i.isActive =1 and len( u.icon )<1 order by seq desc
 
-*****************************************************************************************************************************-
 
Char(32)类型的数字不能按数值来进行比较:
eg:
 130699 和 1306167:
(int)130699 < (int)1306167    按数值大小比较
(Char)130699 > (Char)1306167  按字符从左到右依次比较
 
-*****************************************************************************************************************************-
 
查询语句做除法 保留几位小数
 
Serversql: SELECT ROUND(COALESCE(CAST([curTimes] AS FLOAT), 0)/1000, 3) a FROM [iMessage].[dbo].[tbmaclist]
 
mysql:  SELECT TRUNCATE(7185521/7185522,4)
   
------------------------------------------------------
获取insert的id

SELECT @@IDENTITY;

---------------------------

mysql:

SELECT LAST_INSERT_ID();

上一篇:三、基于hadoop的nginx访问日志分析--计算时刻pv


下一篇:阿里巴巴微服务与配置中心技术实践之道 配置推送 ConfigurationManagement ConfigDrivenAnyting