🧬 WQL / PowerShell

Win32_Battery: Sorting Battery Info (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_Battery.

By WindowsScripting.com · 650 B
BatterySorted.ps1
<#
.SYNOPSIS
    WQL reference: sorting Battery Info results (Win32_Battery).

.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
    .\BatterySorted.ps1
#>

[CmdletBinding()]
param()

$wqlQuery = "SELECT Name, EstimatedChargeRemaining, BatteryStatus, Chemistry FROM Win32_Battery"

Get-CimInstance -Query $wqlQuery |
    Sort-Object -Property Name |
    Format-Table -Property Name, EstimatedChargeRemaining, BatteryStatus, Chemistry -AutoSize