高階查詢
isnull:判斷某個欄位是否為null
func (this *OperatorsController) GetIsNull() {
user := models.User{}
var users []*models.User
orm := orm.NewOrm()//建立orm
qs := orm.QueryTable(user)//建立控制程式碼
n, err := qs.Filter("name__isnull", false).All(&users)
if err != nil {
this.Ctx.WriteString("查詢失敗!")
return
}
fmt.Println("n = ", n)
for _, u := range users {
fmt.Println("u = ", u)
}
this.Ctx.WriteString("查詢成功!")
}
in:和sql中得in含義相同,通常和Filter結合使用
func (this *OperatorsController) GetIn() {
user := models.User{}
var users []*models.User
//建立orm
orm := orm.NewOrm()
//建立控制程式碼
qs := orm.QueryTable(user)
//SELECT * FROM USER WHERE id IN(2, 5, 6);
/*buffer := []int{ 13, 14, 15, 16}
n, err := qs.Filter("id__in", buffer).All(&users)*/
n, err := qs.Filter("id__in", 13, 14, 15, 16).All(&users)
if err != nil {
this.Ctx.WriteString("查詢失敗!")
return
}
fmt.Println("n = ", n)
for _, u := range users {
fmt.Println("u = ", u)
}
this.Ctx.WriteString("查詢成功!")
}
istartswith:判斷某個欄位是否以指定內容開始
func (this *OperatorsController) GetStartswith() {
user := models.User{}
var users []*models.User
//建立orm
orm := orm.NewOrm()
//建立控制程式碼
qs := orm.QueryTable(user)
//SELECT * FROM USER WHERE NAME LIKE '杜%'
n, err := qs.Filter("name__startswith", "B").All(&users)
if err != nil {
this.Ctx.WriteString("查詢失敗!")
return
}
fmt.Println("n = ", n)
for _, u := range users {
fmt.Println("u = ", u)
}
this.Ctx.WriteString("查詢成功!")
}
gt:大於,通常和Filter結合使用
func (this *OperatorsController) GetGt() {
user := models.User{}
var users []*models.User
//建立orm
orm := orm.NewOrm()
//建立控制程式碼
qs := orm.QueryTable(user)
//SELECT * FROM USER WHERE id > 2;
n, err := qs.Filter("id__gt", 14).All(&users)
if err != nil {
this.Ctx.WriteString("查詢失敗!")
return
}
fmt.Println("n = ", n)
for _, u := range users {
fmt.Println("u = ", u)
}
this.Ctx.WriteString("查詢成功!")
}
contains:判斷某個欄位是否 包含指定欄位
func (this *OperatorsController) GetContains() {
user := models.User{}
//建立使用者指標切片,用於儲存查詢結果
var users []*models.User
//建立orm
orm := orm.NewOrm()
//建立控制程式碼
qs := orm.QueryTable(user)
//SELECT * FROM USER WHERE NAME LIKE '%紫%';
n, err := qs.Filter("name__contains", "o").All(&users)
if err != nil {
this.Ctx.WriteString("查詢失敗!")
return
}
fmt.Println("n = ", n)
for _, u := range users {
fmt.Println("u = ", u)
}
this.Ctx.WriteString("查詢成功!")
}
exact:對某個條件取反
func (this *OperatorsController) GetExact() {
user := models.User{}
//建立orm
orm := orm.NewOrm()
//建立控制程式碼
qs := orm.QueryTable("user")
//SELECT * FROM USER WHERE id = 7;
//在user表中查詢id等於12的使用者
err := qs.Filter("id__exact", 12).One(&user)
if err != nil {
this.Ctx.WriteString("查詢失敗!")
return
}
fmt.Println("user = ", user)
this.Ctx.WriteString("查詢成功!")
}
學院Go語言視訊主頁
https://edu.csdn.net/lecturer/1928
清華團隊帶你實戰區塊鏈開發
掃碼獲取海量視訊及原始碼 QQ群:721929980
相關文章
- ❖ MongoDB 高階查詢MongoDB
- Mongodb高階查詢MongoDB
- SQL高階查詢SQL
- 資料庫高階查詢之子查詢資料庫
- mysql高階查詢語句MySql
- Hive高階操作-查詢操作Hive
- sql-server高階查詢SQLServer
- 理解索引(中):MySQL查詢過程和高階查詢索引MySql
- 「Oracle」Oracle高階查詢介紹Oracle
- mysql多條件過濾查詢之mysq高階查詢MySql
- 15、Oracle中的高階子查詢Oracle
- SQL語言基礎(高階查詢)SQL
- oracle學習筆記(十一) 高階查詢Oracle筆記
- Google高階搜尋技巧之高階語法查詢指令Go
- SpringBoot操作ES進行各種高階查詢Spring Boot
- mongoDB高階查詢這一篇就夠了MongoDB
- python資料庫-mongoDB的高階查詢操作(55)Python資料庫MongoDB
- MySQL 優化五(關聯查詢子查詢以及 in 的效率問題)(高階篇)MySql優化
- python資料庫-MySQL資料庫高階查詢操作(51)Python資料庫MySql
- 整合LlamaIndex與LangChain構建高階的查詢處理系統IndexLangChain
- Flowable 6.6.0 BPMN使用者指南 - 17 高階用例 - 17.7 高階查詢API:執行時和歷史任務查詢之間的無縫切換API
- Net/NetCore/.NET5 ORM 六大查詢體系 - SqlSugar 高階篇NetCoreORMSqlSugar
- day95:flask:SQLAlchemy資料庫查詢進階&關聯查詢FlaskSQL資料庫
- 實現更高效能,一起探索Amazon Redshift高階查詢加速器
- Linux歸檔及壓縮、重定向與管道操作、find精確查詢、vim高階使用Linux
- MySQL語句第二高的薪水查詢MySql
- 高併發系統之大忌-慢查詢
- SQL查詢的:子查詢和多表查詢SQL
- mysql-分組查詢-子查詢-連線查詢-組合查詢MySql
- 查詢佔用資源高的JAVA程式碼Java
- Oracle 高水位查詢和處理方法彙總Oracle
- 複雜查詢—子查詢
- 查詢——二分查詢
- 貝恩諮詢:全球高階分析人才行業研究行業
- MYSQL學習筆記25: 多表查詢(子查詢)[標量子查詢,列子查詢]MySql筆記
- 查詢演算法__Fibonacci查詢演算法
- group by,having查詢 ”每**“的查詢
- Elasticsearch複合查詢——boosting查詢Elasticsearch