Ganzzahlen in reelle Werte in SQLite umwandeln
SQLite-Operationen mit numerischen Daten geben standardmäßig oft ganzzahlige Ergebnisse zurück. In Szenarien, in denen Sie reale Werte benötigen, ist es jedoch wichtig, die ganzen Zahlen in Dezimalzahlen umzuwandeln.
Betrachten Sie das folgende Beispiel:
sqlite> select totalUsers/totalBids from (select (select count(*) from Bids) as totalBids , (select count(*) from Users) as totalUsers) A; 1
Hier gibt die Division von ganzen Zahlen ein ganzzahliges Ergebnis zurück von 1. Um den tatsächlichen Wert der Division zu erhalten, können wir Typisierungstechniken verwenden.
Lösung: Multiplizieren mit 1,0
Um das ganzzahlige Ergebnis in einen reellen Wert umzuwandeln, können wir eine der Zahlen in der Division mit 1,0 multiplizieren. Diese einfache Operation erzwingt eine Gleitkommadivision, was zu einem reellen Wert führt.
SELECT something*1.0/total FROM somewhere
Anwenden dieser Technik auf unser vorheriges Beispiel:
sqlite> select totalUsers*1.0/totalBids from (select (select count(*) from Bids) as totalBids , (select count(*) from Users) as totalUsers) A; 0.16666666666666666
Das Ergebnis stellt nun einen reellen Wert dar die tatsächliche Berechnung der Gesamtnutzer geteilt durch die Gesamtgebote.
Das obige ist der detaillierte Inhalt vonWie konvertiert man ganzzahlige Ergebnisse in SQLite-Abfragen in reelle Werte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!