Ich arbeite in Google BigQuery (nicht mit LegacySQL), und ich versuche derzeit, eine Zeichenfolge als float64() zu casten(). Jedes Mal bekomme ich den Fehler "Bad double value". Ich habe auch safe_cast() ausprobiert, aber es eliminiert einige meiner IDs komplett (Bsp .: wenn ein Kunde 3 mal für 3 verschiedene Daten wiederholt und nur 'Null' für einen einzelnen "Height" Eintrag hat, wird dieser Kunde komplett eliminiert Ich mache safe_cast(), nicht nur die Zeile, die den Wert 'null' hatte. Ich habe keinen seltsamen String-Wert in meinen Daten, nur ganze oder rationale Zahlen oder Null-Einträge."schlechter doppelter Wert" in Google BigQuery
Hier ist meine aktuellen Code:
select id, date,
cast(height as float64) as height,
cast(weight as float64) as weight
from (select id, date, max(height) as height, max(weight) as weight
from table
group by 1,2
)
group by 1, 2
Wie sehen Größe und Gewicht (Strings) aus? Ich kann an problematische Strings denken; z.B. 'NaN' oder so genannte" subnormale "Doppelwerte (weniger als 1E-308), an denen BigQuery scheitern könnte. Ganz zu schweigen von Höhen-String-Werten wie "WIRKLICH TAL" :-) – Mischa