Heim  >  Artikel  >  Backend-Entwicklung  >  Wie berechnet man die Gehaltssumme mit GORM genau?

Wie berechnet man die Gehaltssumme mit GORM genau?

Linda Hamilton
Linda HamiltonOriginal
2024-10-23 20:54:02118Durchsuche

How to Accurately Calculate Salary Sum with GORM?

Berechnung der Gehaltssumme mit GORM

Das Abrufen der Summe einer Spalte, z. B. des Gehalts, aus einer Tabelle mit GORM kann effizient erreicht werden. Hier ist ein überarbeitetes Codebeispiel, das diese Aufgabe erfüllen soll:

<code class="go">func GetSalarySum(c echo.Context) error {
    db, err := gorm.Open("postgres", "host=localhost port=5433 user=postgres dbname=testone password=root sslmode=disable")
    checkError(err)
    defer db.Close()

    type SalaryResult struct { // Define a result structure
        TotalSalary int64 `json:"total_salary"`
    }

    query := "SELECT SUM(salary) AS total_salary FROM people"
    result := SalaryResult{} // Initialize the result structure

    if err := db.Table("people").Select(query).Scan(&result).Error; err != nil {
        fmt.Println("error->", err)
        return err
    }

    fmt.Println("sum->", result)
    return c.JSON(http.StatusOK, result)
}</code>

In diesem überarbeiteten Code definieren wir eine SalaryResult-Struktur, um das Ergebnis der Abfrage darzustellen. Anschließend verwenden wir die Scan()-Methode, um das Abfrageergebnis in diese Struktur einzuscannen. Abschließend geben wir das Ergebnis mit der Gehaltssummenspalte an den Kunden zurück.

Das obige ist der detaillierte Inhalt vonWie berechnet man die Gehaltssumme mit GORM genau?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn