<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## 高級查詢 這里把幾個高級查詢單獨列出來 ## Chunk 數據分片 大量數據批量處理 (累積處理) ```go ` 當需要操作大量數據的時候, 一次性取出再操作, 不太合理, 就可以使用chunk方法 chunk的第一個參數是指定一次操作的數據量, 根據業務量, 取100條或者1000條都可以 chunk的第二個參數是一個回調方法, 用于書寫正常的數據處理邏輯 目的是做到, 無感知處理大量數據 實現原理是, 每一次操作, 自動記錄當前的操作位置, 下一次重復取數據的時候, 從當前位置開始取 ` User := db.Table("users") User.Fields("id, name").Where("id",">",2).Chunk(2, func(data []map[string]interface{}) { // for _,item := range data { // fmt.Println(item) // } fmt.Println(data) }) // 打印結果: // map[id:3 name:gorose] // map[id:4 name:fizzday] // map[id:5 name:fizz3] // map[id:6 name:gohouse] [map[id:3 name:gorose] map[name:fizzday id:4]] [map[id:5 name:fizz3] map[id:6 name:gohouse]] ``` ## Loop 數據分片 大量數據批量處理 (從頭處理) ```go ` 類似 chunk 方法, 實現原理是, 每一次操作, 都是從頭開始取數據 原因: 當我們更改數據時, 更改的結果可能作為where條件會影響我們取數據的結果,所以, 可以使用Loop` User := db.Table("users") User.Fields("id, name").Where("id",">",2).Loop(2, func(data []map[string]interface{}) { // for _,item := range data { // fmt.Println(item) // } // 這里執行update / delete 等操作 }) ``` ## 嵌套where ```go // SELECT * FROM users // WHERE id > 1 // and ( name = 'fizz' // or ( name = 'fizz2' // and ( name = 'fizz3' or website like 'fizzday%') // ) // ) // and job = 'it' LIMIT 1 User := db.Table("users") User.Where("id", ">", 1).Where(func() { User.Where("name", "fizz").OrWhere(func() { User.Where("name", "fizz2").Where(func() { User.Where("name", "fizz3").OrWhere("website", "like", "fizzday%") }) }) }).Where("job", "it").First() ``` ##
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看