[go-zero] 子查询,使用到Squirrel包

使用到

实现sql:

SELECT count(1) FROM (SELECT 1 FROM tb_map_total WHERE deleted = 0 AND seasonId IN (1000016) AND stageIdList IN ('10008','10007') GROUP BY useMapId) AS tmp

Go 复制代码
	subBuilder := squirrel.Select("1").From(m.table).Where(squirrel.Eq{"deleted": 0})
	if len(seasonIdList) > 0 {
		subBuilder = subBuilder.Where(squirrel.Eq{"seasonId": seasonIdList})
	}
	if len(stageIdList) > 0 {
		subBuilder = subBuilder.Where(squirrel.Eq{"stageIdList": stageIdList})
	}
	subBuilder = subBuilder.GroupBy("useMapId")

	builder := squirrel.Select("count(1)").FromSelect(subBuilder, "tmp")

	sql, args, err := builder.ToSql()

	if err != nil {
		return 0
	}

	var resp int64

	err = m.conn.QueryRowCtx(ctx, &resp, sql, args...)

	switch err {
	case nil:
		return resp
	default:
		return 0
	}
相关推荐
天天讯通几秒前
BI 报表:呼叫中心的伪刚需
大数据·前端·数据库
数据库知识分享者小北3 分钟前
Hybrid Model Support:阿里云 Tair 联合 SGLang对 Mamba-Transformer 等混合架构模型的支持方案
数据库·阿里云·tair
leiming67 分钟前
c++ string 容器
开发语言·c++·算法
找不到、了9 分钟前
分库分表架构下的跨库 JOIN 问题的实战方案
数据库·架构
自由与自然15 分钟前
栅格布局常用用法
开发语言·前端·javascript
_codemonster19 分钟前
python易混淆知识点(十六)lambda表达式
开发语言·python
小梁努力敲代码19 分钟前
Java多线程--单例模式
java·开发语言
Percep_gan20 分钟前
解决-bash: /usr/bin/yum: No such file or directory
开发语言·bash
缺点内向29 分钟前
如何在 C# 中将 Word 文档转换为 EMF(增强型图元文件)
开发语言·c#·word·.net
lixora29 分钟前
对指定Oracle datafile block hexdump 16进制转储
数据库