[Go] gorm執行原生sql語句


當有復雜sql語句的時候,我們需要執行原生sql語句,這樣更加方便

比如下面的這條sql語句

//查詢每天條數
type EveryDayNum struct {
    Day string `json:"day"`
    Num int64  `json:"num"`
}

func CountVisitorsEveryDay(toId string) []EveryDayNum {
    var results []EveryDayNum
    DB.Raw("select DATE_FORMAT(updated_at,'%Y-%m-%d') as day ,"+
        "count(*) as num from visitor where to_id=? group by day order by day desc limit 30",
        toId).Scan(&results)
    return results
}

只需要拿着數據庫對象去.Raw(原生sql).Scan()就可以了

Scan的參數是一個結構體引用,所以一定要定義好結構體接收數據才行

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM