关于Select Where In 的排序问题

前端之家收集整理的这篇文章主要介绍了关于Select Where In 的排序问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


<div class="codetitle"><a style="CURSOR: pointer" data="76612" class="copybut" id="copybut76612" onclick="doCopy('code76612')"> 代码如下:

<div class="codebody" id="code76612">
Select
FROMtable1
Where(IDIN(3,5,1,4,2))

<div class="codetitle"><a style="CURSOR: pointer" data="68326" class="copybut" id="copybut68326" onclick="doCopy('code68326')"> 代码如下:
<div class="codebody" id="code68326">
Select

FROMtable1
Where(IDIN(3,2))如果In后面的条件都是数字,那MSsql排序应该为
<div class="codetitle"><a style="CURSOR: pointer" data="46300" class="copybut" id="copybut46300" onclick="doCopy('code46300')"> 代码如下:
<div class="codebody" id="code46300">
Select
FROMtable1
Where(IDIN(3,2))
orDERBYCHARINDEX(','+CONVERT(nvarchar,ID)+',',Replace('3,2','',''))+',')

<div class="codetitle"><a style="CURSOR: pointer" data="85821" class="copybut" id="copybut85821" onclick="doCopy('code85821')"> 代码如下:
<div class="codebody" id="code85821">
Select

FROMtable1
Where(IDIN(3,')改进方法,不去处理空格,直接改用空格判断.可以用来判断少数有空格的字符条件.

<div class="codetitle"><a style="CURSOR: pointer" data="67258" class="copybut" id="copybut67258" onclick="doCopy('code67258')"> 代码如下:<div class="codebody" id="code67258">
Select
FROMtable1
Where(IDIN(3,2))
orDERBYPATINDEX('%'+CONVERT(nvarchar(4000),ID)+'%',''+CONVERT(nvarchar(4000),'))+'')

<div class="codetitle"><a style="CURSOR: pointer" data="49504" class="copybut" id="copybut49504" onclick="doCopy('code49504')"> 代码如下:<div class="codebody" id="code49504">
Select

FROMtable1
Where(IDIN(3,'))+'')

其实还是在sql外处理好条件字符串再进行查询和排序比较好.
对于MysqL排序可能要改为(MysqL不熟):<div class="codetitle"><a style="CURSOR: pointer" data="76207" class="copybut" id="copybut76207" onclick="doCopy('code76207')"> 代码如下:<div class="codebody" id="code76207">
Select*
FROMtable1
Where(IDIN(3,2))
orDERBYFIND_IN_SET(ID,'3,2')

原文链接:https://www.f2er.com/mssql/64497.html
排序排序排序

猜你在找的MsSQL相关文章