Din funktion returnerar formaterad utdata istället för själva tabellen:
$DataSet.Tables[0] | ft -AutoSize
Ta bort | ft -AutoSize
och du kommer att kunna arbeta med de faktiska tabelldata:
$Result1 = Invoke-MySql -Query $Query1 |
Where-Object { $_.gid -eq 2122322 } |
Select-Object -Expand key3
Format-*
cmdlets är till för att formatera data när den presenteras för användaren. Aldrig använda dem på data som bör bli föremål för ytterligare behandling (i princip, använd dem aldrig i en funktion).