<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 查詢條件方法 查詢和統計主要使用`Get`, `Find`, `Count`, `Rows`, `Iterate`這幾個方法,同時大部分函數在調用`Update`, `Delete`時也是可用的。在進行查詢時可以使用多個方法來形成查詢條件,條件函數如下: * Alias(string) 給Table設定一個別名 ~~~ engine.Alias("o").Where("o.name = ?", name).Get(&order) ~~~ * And(string, …interface{}) 和Where函數中的條件基本相同,作為條件 ~~~ engine.Where(...).And(...).Get(&order) ~~~ * Asc(…string) 指定字段名正序排序,可以組合 ~~~ engine.Asc("id").Find(&orders) ~~~ * Desc(…string) 指定字段名逆序排序,可以組合 ~~~ engine.Asc("id").Desc("time").Find(&orders) ~~~ * Id(interface{}) 傳入一個主鍵字段的值,作為查詢條件,如 ~~~ var user User engine.Id(1).Get(&user) // SELECT * FROM user Where id = 1 ~~~ 如果是復合主鍵,則可以 ~~~ engine.Id(core.PK{1, "name"}).Get(&user) // SELECT * FROM user Where id =1 AND name= 'name' ~~~ 傳入的兩個參數按照struct中pk標記字段出現的順序賦值。 * Or(string, …interface{}) 和Where函數中的條件基本相同,作為條件 * OrderBy(string) 按照指定的順序進行排序 * Select(string) 指定select語句的字段部分內容,例如: ~~~ engine.Select("a.*, (select name from b limit 1) as name").Find(&beans) engine.Select("a.*, (select name from b limit 1) as name").Get(&bean) ~~~ * Where(string, …interface{}) 和SQL中Where語句中的條件基本相同,作為條件 * In(string, …interface{}) 某字段在一些值中,這里需要注意必須是[]interface{}才可以展開,由于Go語言的限制,[]int64等不可以直接展開,而是通過傳遞一個slice。示例代碼如下: ~~~ engine.In("cloumn", 1, 2, 3).Find() engine.In("column", []int{1, 2, 3}).Find() ~~~ * Cols(…string) 只查詢或更新某些指定的字段,默認是查詢所有映射的字段或者根據Update的第一個參數來判斷更新的字段。例如: ~~~ engine.Cols("age", "name").Get(&usr) // SELECT age, name FROM user limit 1 engine.Cols("age", "name").Find(&users) // SELECT age, name FROM user engine.Cols("age", "name").Update(&user) // UPDATE user SET age=? AND name=? ~~~ * AllCols() 查詢或更新所有字段,一般與Update配合使用,因為默認Update只更新非0,非”“,非bool的字段。 ~~~ engine.AllCols().Id(1).Update(&user) // UPDATE user SET name = ?, age =?, gender =? WHERE id = 1 ~~~ * MustCols(…string) 某些字段必須更新,一般與Update配合使用。 * Omit(…string) 和cols相反,此函數指定排除某些指定的字段。注意:此方法和Cols方法不可同時使用。 ~~~ // 例1: engine.Omit("age", "gender").Update(&user) // UPDATE user SET name = ? AND department = ? // 例2: engine.Omit("age, gender").Insert(&user) // INSERT INTO user (name) values (?) // 這樣的話age和gender會給默認值 // 例3: engine.Omit("age", "gender").Find(&users) // SELECT name FROM user //只select除age和gender字段的其它字段 ~~~ * Distinct(…string) 按照參數中指定的字段歸類結果。 ~~~ engine.Distinct("age", "department").Find(&users) // SELECT DISTINCT age, department FROM user ~~~ 注意:當開啟了緩存時,此方法的調用將在當前查詢中禁用緩存。因為緩存系統當前依賴Id,而此時無法獲得Id * Table(nameOrStructPtr interface{}) 傳入表名稱或者結構體指針,如果傳入的是結構體指針,則按照IMapper的規則提取出表名 * Limit(int, …int) 限制獲取的數目,第一個參數為條數,第二個參數表示開始位置,如果不傳則為0 * Top(int) 相當于Limit(int, 0) * Join(string,interface{},string) 第一個參數為連接類型,當前支持INNER, LEFT OUTER, CROSS中的一個值, 第二個參數為string類型的表名,表對應的結構體指針或者為兩個值的[]string,表示表名和別名, 第三個參數為連接條件 * GroupBy(string) Groupby的參數字符串 * Having(string) Having的參數字符串
                  <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>

                              哎呀哎呀视频在线观看