🧬 WQL / PowerShell

Win32_PointingDevice: Sorting Pointing Devices (WQL has no ORDER BY)

WQL has no ORDER BY clause — this shows the standard workaround of piping Get-CimInstance results through Sort-Object on Win32_PointingDevice.

By WindowsScripting.com · 633 B
PointingDeviceSorted.ps1
<#
.SYNOPSIS
    WQL reference: sorting Pointing Devices results (Win32_PointingDevice).

.DESCRIPTION
    WQL (the WMI Query Language) does not support an ORDER BY clause —
    unlike regular SQL. Sort after the fact with Sort-Object instead;
    this is one of the most common WQL gotchas for people coming from
    SQL backgrounds.

.EXAMPLE
    .\PointingDeviceSorted.ps1
#>

[CmdletBinding()]
param()

$wqlQuery = "SELECT Name, Manufacturer, NumberOfButtons FROM Win32_PointingDevice"

Get-CimInstance -Query $wqlQuery |
    Sort-Object -Property Name |
    Format-Table -Property Name, Manufacturer, NumberOfButtons -AutoSize