基于属性的交替选择

时间:2018-05-14 14:59:29

标签: sql

我想使用SQL执行一些黑魔法,更具体地说,我想在具有某些属性的条目之间交替使用结果集。

id | propertyX
1  | A
2  | A
3  | B
4  | B
5  | A

我希望select的结果集替换那些具有propertyX = A和propertyX = B的条目,这将产生以下(id列表):

1,3,2,4,5

您可以完全使用SQL执行此类操作,还是在选择后必须进行一些后期处理?

1 个答案:

答案 0 :(得分:3)

您可以使用ANSI标准bigInt(20).pow(200)函数轻松获取此顺序的ID列表:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
            <add name="PowerShell CGI" path="*.ps1" verb="GET,POST,HEAD" modules="CgiModule" scriptProcessor="C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoLogo -NoProfile -NonInteractive -File &quot;%s&quot; %s" resourceType="File" requireAccess="Script" />
        </handlers>
    </system.webServer>
</configuration>

实际上,你甚至不需要子查询,但我认为它使逻辑更清晰:

row_number()