结构体
type Mould struct {
MouldId string `grom:"column:mouldID"`
MouldInteriorID string `grom:"column:mouldInteriorID"`
MouldName string `grom:"column:mouldName"`
ProjectInteriorID string `grom:"column:projectInteriorID"`
projectName string `grom:"column:projectName"`
ProjectId string `grom:"column:projectID"`
} func GetMouldAll(mouldInteriorID string,projectInteriorID string)(moulds []Mould, err error){
var sql bytes.Buffer
sql.WriteString("select projectName,mouldInteriorID,mouldName,mould.mouldID,mould.projectID,projectInteriorID from mould ")
sql.WriteString("inner join Project on Project.projectID = mould.projectID where 1 = 1 ")
if mouldInteriorID != ""{
sql.WriteString(" and mould.mouldInteriorID='")
sql.WriteString(mouldInteriorID)
sql.WriteString("'")
}
if projectInteriorID!="" {
sql.WriteString(" and projectInteriorID='")
sql.WriteString(projectInteriorID)
sql.WriteString("'")
}
rows,err := MsDb.Raw(sql.String()).Rows()
if err != nil{
panic(err)
}
for rows.Next(){
mould := Mould{}
err = rows.Scan(&mould.projectName,&mould.MouldInteriorID,&mould.MouldName,&mould.MouldId,&mould.ProjectId,&mould.ProjectInteriorID)
moulds = append(moulds, mould)
}
rows.Close()
return
}

gorm 动态拼接查询条件的更多相关文章

  1. mybatis 使用记录(二) 动态拼接查询条件

    2016-12-16 阅读项目代码时,在项目的xml文件中发现如下写法: SELECT student_user_id FROM tbr_student_class WHERE 1=1 <if ...

  2. Linq to Entity 动态拼接查询条件(重点是OR)

    public static class PredicateExtensions { /// <summary> /// 机关函数应用True时:单个AND有效,多个AND有效:单个OR无效 ...

  3. SqlServer存储过程应用二:分页查询数据并动态拼接where条件

    前言 开发中查询功能是贯穿全文的,我们来盘一盘使用存储过程分页查询,并且支持动态拼接where条件. 划重点:支持动态拼接where条件 对存储过程的使用有疑问的同学去[SqlServer存储过程的创 ...

  4. LINQ to SQL 运行时动态构建查询条件

    在进行数据查询时,经常碰到需要动态构建查询条件.使用LINQ实现这个需求可能会比以前拼接SQL语句更麻烦一些.本文介绍了3种运行时动态构建查询条件的方法.本文中的例子最终实现的都是同一个功能,从Nor ...

  5. EF 拉姆达 动态拼接查询语句

    EF 动态拼接查询语句 using System; using System.Collections.Generic; using System.IO; using System.Linq; usin ...

  6. Oracle,Mysql ,SQL Server 三大数据库带参数的模糊查询, 拼接查询条件问题

    最近项目开发一直在不断切换数据库,有时候一条sql 要同时考虑多种数据库中的兼容问题 , 先总结一条模糊查询拼接查询条件的问题,后续追加总结. 目前使用   mybatis: 1. Oracle 中使 ...

  7. linq里lambda写的join查询,并附加动态拼接的条件,条件为enum类型的查询

    因为查询条件不固定的原因,sql式的linq查询没法动态拼接条件. 网上搜的资料整理之后终于解决. 参考资料: enum使用 http://blog.csdn.net/slowlifes/articl ...

  8. 用PredicateBuilder实现Linq动态拼接查询

    在使用Linq查询的时候,特别是如果你在使用Entiry Framwork,有时会遇到动态查询的情况(客户的查询条件是不固定的拼接查询).我们能想到的第一方案应该是拼接SQL,的确这样是可以达到我们的 ...

  9. Lambda表达式动态组装查询条件

    最近比较闲,年底了,项目也进入尾声:每天就是维护一下系统,整理整理文档,整理知识点,这样才觉得有点意思: 问题 在使用Linq的where()查询的时候,不知道大家是怎么动态组装多个查询条件时,是怎么 ...

  10. 我的一个PLSQL函数 先查询再插入数据库的函数 动态SQL拼接查询条件、通用游标、记录定义(封装部分查询字段并赋值给游标)、insert select 序列、常量【我】

    先查询再插入数据库的函数 CREATE OR REPLACE FUNCTION F_REVENUE_SI(l_p_cd in Varchar2, l_c_cd in Varchar2, l_prod_ ...

随机推荐

  1. Kingbase ES函数参数模式与Oracle的异同

    文章概要: 本文对主要就KES和Oracle的PLSQL中关于存储过程参数模式异同进行介绍,列举和验证了存在的差异 (如果想直接看差异的结论可直接跳到末尾). 一,存储过程的三种参数模式 重新回顾一下 ...

  2. Hexo+Gitee搭建个人博客

    Hexo+Gitee搭建个人博客 (一)前言 beacuse(事出有因): 很久之前就知道Hexo搭建个人博客,但由于惰性,一直没有行动,在此之前一直用的是博客园. but(但是): 今天打开博客园, ...

  3. C++设计模式 - 装饰器(Decorator)

    单一职责模式: 在软件组件的设计中,如果责任划分的不清晰,使用继承得到的结果往往是随着需求的变化,子类急剧膨胀,同时充斥着重复代码,这时候的关键是划清责任. 典型模式 Decorator Bridge ...

  4. Spring Bean 的一生

    Spring Bean 的一生包括其从创建到消亡的整个过程: 实例创建 => 填充 => 初始化 => 使用 => 销毁. 这里需要注意的是,从 bean 实例的创建到可以使用 ...

  5. #分层图最短路,Dijkstra#洛谷 4568 [JLOI2011]飞行路线

    题目 一个无向图,每条边都有花费,可以有\(k\)次挑选边去除花费的机会,问从指定起点到指定终点的最小花费 分析 考虑用分层最短路完成,也就是在同一层走需要花费,不同层走不用花费,最终走到最底层,然后 ...

  6. Drop 、Delete、Truncate的区别是什么

    Drop .Delete.Truncate 的区别是什么? DROP 删除表结构和数据,truncate 和 delete 只删除数据 truncate 操作,表和索引所占用的空间会恢复到初始大小:d ...

  7. 动态规划(六)——树形dp

    树形dp,又称树状dp,即在树上进行的dp,在设计动态规划算法时,一般就以节点从深到浅(子树从小到大)的顺序作为dp的"阶段",dp的状态表示中,第一维通常是节点编号(代表以该节点 ...

  8. c# 解决死锁问题Monitor

    前言 在高并发中,一个很关键的问题就是要避免死锁. 那么为什么会产生死锁呢?这种情况多见吗? 举一个例子: 比如方法一中先lock(object1),在lock(object1)中lock(objec ...

  9. 实战:如何编写一个 OpenTelemetry Extensions

    前言 前段时间我们从 SkyWalking 切换到了 OpenTelemetry ,与此同时之前使用 SkyWalking 编写的插件也得转移到 OpenTelemetry 体系下. 我也写了相关介绍 ...

  10. WPF开发随笔收录-获取程序专有内存

    分享一个C#获取程序当前所占用的内存大小的方法,实测跟任务管理器上的内存值一样 /// <summary> /// 性能计数器组件类 /// </summary> privat ...