Вашата функция връща форматиран изход вместо самата таблица:
$DataSet.Tables[0] | ft -AutoSize
Премахнете | ft -AutoSize
и ще можете да работите с действителните данни в таблицата:
$Result1 = Invoke-MySql -Query $Query1 |
Where-Object { $_.gid -eq 2122322 } |
Select-Object -Expand key3
Format-*
Командлетите са за форматиране на данни, когато се представят на потребителя. Никога използвайте ги върху данни, които трябва да бъдат обект на по-нататъшна обработка (по принцип никога не ги използвайте във функция).