怎么用sql满足这个需求?

问题描述

怎么用sql满足这个需求?

dbo.Brand(品牌)

dbo.BrandAttention(品牌关注)

现在有一个需求, 查询4个字段 其中3个字段是Brand表中的3个字段
KeyId, BrandName, BrandImage
最后一个字段需求是这样的:
这里一共有10个品牌, 如果当前品牌在BrandAttention表里被UserId为131的关注过,
ps: BrandAttention中出现相同的
则第4个字段的值为1, 否则第4个字段的值为0
最后查询效果为

解决方案

select t.*,(select count(*) from BrandAttention where userid='131' and 关联字段=Brand.关联字段) as IsAttention from Brand

解决方案二:

select
b.KeyID
,b.BrandName
,b.BrandImage
,(case when sum(ba.IsAttention) > 0 then '1' else '0' end) as IsAttention
from Brand as b
left join BrandAttention as ba
on b.KeyID = ba.BrandID
group by b.KeyID,b.BrandName,b.BrandImage

解决方案三:

易试互动 怎么IsAttention=1了呢?

时间: 2024-10-26 05:46:31

怎么用sql满足这个需求?的相关文章

脚本-关于百张表union问题,求sql大神

问题描述 关于百张表union问题,求sql大神 需求展示是这样的,根据一家企业的唯一id去遍历这个excel所有的表,一开始还算好做的,三个sheet分开union就行了,用java程序去评了一个sql,后面需求变成把联系人和电话放在一起,但是联系人的sheet和联系方式的excel并不是一一对应的,,而且可能一个表里有多个联系人,而联系方式少于联系人的,这样数据又不能精确配对了..'现在有没有什么办法不用手动去union,用类似我上面弄个脚本自动生成的方式 解决方案 先写一个程序,一次性将你

如何解决 SQL Server 2000 中的连接问题

server|解决|问题 如何解决 SQL Server 2000 中的连接问题适用于 重要说明:本文包含有关修改注册表的信息.修改注册表之前,一定要备份注册表,并且一定要知道在发生问题时如何还原注册表.有关如何备份.还原和编辑注册表的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 256986 Microsoft Windows 注册表说明 本任务的内容概要 解决连接问题 验证 DNS 设置 验证启用的协议和别名 验证 SQL Server 实例正在正确地侦听 解

调优IBM DB2 UDB SQL存取路径

简介 Visual Explain 是 IBM DB2 Universal Database 中的杰出工具,程序员和 DBA 用它来详细说明 DB2 优化器为 SQL 语句所选择的存取路径.事实上,Explain 应该是您性能监控策略的 关键组件.Explain 为解决许多类型的性能问题提供了价值无法估量的信息,因为它提供这样的细节: DB2 在"幕后"所做的工作,以实现 SQL 请求的数据需求 DB2 是否使用可用的索引,如果使用,DB2 如何使用它们 为满足连接条件而访问 DB2

教你学会怎样升级到SQL Anywhere10(15)

UltraLite应用代码升级工具 您可使用C++ API 移植向导来帮助移植通过ulgen 生成的C/C++源代码.向导帮助鉴别在版本10 标准中不再支持的嵌入式SQL.如果您不能完成移植过程,您可停止并将修改过的SQL 语句保存在一个*.uag文件中. 如果这是您第一次使用该向导,表和语句将源于SQL Anywhere参照数据库.在后续的迭代过程中,您可使用保存的*.uag文件替代. 在Sybase Central 中移植UltraLite C/C++ API 1.请认真阅读软件升级中的重要

加速Pro*C应用程序到DB2嵌入式SQL C的迁移

本文中的技巧和技术有助于加速 Pro*c 的迁移.文中的所有内容都基于一些实时迁移项目. 嵌入式 SQL 是执行嵌入在宿主语言应用程序中的 SQL 语句的一种方式.嵌入式 SQL 数据库应用程序首先连接到数据库,然后执行这些嵌入式 SQL.这些 SQL 可以动态执行,也可以静态执行.最常用的宿主语言是 C++ 和 C++.在可以编译应用程序之前,构建嵌入式 SQL 应用程序涉及两个主要步骤:PREP(或 PRECOMPILE)和 http://www.aliyun.com/zixun/aggre

SQL Server on Linux BCP工具导出RDS SQL Server数据

摘要: SQL Server发布了Linux版本之后,客户增加了一些新需求,总结主要有以下两种: 1.是否支持在Linux操作系统保存,RDS SQL Server的CSV格式文件到文件系统 2.在一台Linux系统的主机同时管理RDS MySQL实例数据和RDS SQL Server数据 需求解读: SQL Server BCP工具可以满足以上需求,这个工具提供了导出CSV格式的文本,可以保存在Linux文件系统,同时也可以方便的讲这个CSV文件导入到RDS MySQL实例或其他支持标准CSV

一个开发需求的解决方案 & Oracle临时表介绍

一.开发需求 最近有一个开发需求,大致需要先使用主表,或主表和几张子表关联查询出ID(主键)及一些主表字段,然后再用这些ID查找最多10张表中对应的记录,主表记录数大约2000万,每张子表的记录数均为百万以上,最多可能会有5000万,主表一条数据可能对应子表多条数据.现在开发使用的逻辑是: 1.使用条件查询主表或主表和几张子表(不同场景)符合条件的主表记录ID值及其他一些主表字段项. 2.利用这些主表ID值,分别和几张子表使用IN子句,查询出子表中符合条件的记录项.有几张子表,就执行几次SQL语

java版云笔记(一)

云笔记项目 这个项目的sql文件,需求文档,需要的html文件,jar包都可以去下载,下载地址为:http://download.csdn.net/download/liveor_die/9985846 项目简介 笔记管理系统,用户可以管理笔记信息,可以查看 其他用户分享的笔记. 主要功能如下 用户模块:登录.注册.修改密码.退出 笔记本模块:创建.删除.更新.查看 笔记模块:创建.删除.更新.查看.转移 分享和收藏模块:分享.收藏.查看.搜索分享 回收站模块:查看.彻底删除.恢复 活动模块:查

Oracle 12.2新特性掌上手册 - 第七卷 Big Data and Data Warehousing

编辑手记:也许Oracle 12.2在内核上的智能改进只能让你眼前一亮,那今天基于Big Data和数据仓库的性能优化增强则会让你伸手触Oracle的强大灵魂.细腻中霸气侧漏,这就是Oracle 12.2. 1Partitioning:External Tables(外部表) 外部分区表提供了将分区的Hive表映射到Oracle数据库生态系统以及在基于Hadoop分布式文件系统(HDFS)的数据存储之上提供声明分区的功能. 作用 Oracle数据库基于外部HDFS的数据存储功能,使得数据库分区能