作者 yangfu

query exists

@@ -100,3 +100,21 @@ func(s *SqlExcutor)Querys(v interface{})(total int,err error){ @@ -100,3 +100,21 @@ func(s *SqlExcutor)Querys(v interface{})(total int,err error){
100 } 100 }
101 return 101 return
102 } 102 }
  103 +//查询是否存在
  104 +func(s *SqlExcutor)QueryExists()(exists bool,err error){
  105 + var total int
  106 + o :=orm.NewOrm()
  107 + _,sqlCount,err :=s.Strings()
  108 + sqlCount=strings.Replace(sqlCount,"select count(0) ","select 1 ",1)
  109 + if !s.islimit{
  110 + sqlCount = sqlCount +" limit 1"
  111 + }
  112 + if err=o.Raw(sqlCount).QueryRow(&total);err!=nil{
  113 + return
  114 + }
  115 + exists = false
  116 + if total==1{
  117 + exists = true
  118 + }
  119 + return
  120 +}