0 0

sql自连接问题5

在产品表中查询产品名称、规格一样的产品有哪些:
要求出的结果有:产品编号、产品名称、规格
cp(产品表):产品编号、产品名称、规格
问题补充:
zhoun 你的查询是能实现出来大概功能 但是没有查询出来产品编号啊  还有 我想问下 这里的 having count(产品编号)>1怎么理解啊?
问题补充:
哦 非常感谢你的帮助 不过我还想把编号字段也一起查询出来 能在这个sql语句上加以修改然后让编号也一同显示出来么 万分感谢……
问题补充:
既然要查询出来所有字段,用group by 自然不行,因为取不出来编号的,我知道用自连接可以实现,但是现在不记得具体概念了了 实现起来有些困难 还请大家一起探讨研究 一旦行通 一起学习了~~
问题补充:
题目确实很崩人,这个题的确不是考察group by用法 而确实时考察自连接问题,用分组做出来的查询不出编号,你实际的考虑,我查询库存信息中想知道那些编号的产品的名称和规格一样 的时候是否需要显示编号呢 而group by 就显示不出编号啊。。。。。。继续求答案ing
问题补充:
是查产品名称和规格一样的产品的产品编号、产品名称、规格。
问题补充:
谢谢大家!我自己试出来的答案是这样的:两表做笛卡尔积 (自连接)然后进行查询的 还请大家多多指点..

select distinct a.* from cp a,cp b where a.产品名称=b.产品名称 and a.规格=b.规格 and a.产品编号!=b.产品编号  
2009年12月02日 16:23
  • 描述: 表结构
  • 大小: 3.3 KB

9个答案 按时间排序 按投票排序

0 0

采纳的答案

select 产品名称, 规格, group_concat(产品编号)
from cp  
group by 产品名称, 规格
having count(产品编号) > 1  


Mysql 提供group_concat函数

2009年12月03日 15:50
0 0

如果用hibernate,或许可以这样:

select cp.产品编号, cp.产品名称, cp.规格 
from cp 
where (cp.产品名称, cp.规格) in 
(select cp.产品名称, cp.规格 from cp
group by cp.产品名称, cp.规格   
having count(cp.产品编号) > 1)

2009年12月07日 18:03
0 0

用这句,试过了,可以,不过不知道效率如何,有没有更好的
select * from product w,
(select a.id myid,count(1) from product a,product b
where a.name=b.name and a.type=b.type group by a.id having count(1)>1) q
where w.id = q.myid

2009年12月04日 00:05
0 0

select c.* from cp c where c.产品编号 in(select distinct c.产品编号 from cp c  group by c.产品规格 having count(c.产品编号)>1
看看,行不

2009年12月02日 20:41
0 0

用我那个肯定没问题的

select * from cp a where a.产品名称 in(select distinct b.产品名称,b.规格 form cp b)

2009年12月02日 17:05
0 0

having count(产品编号) > 1  就说明至少有两个产品在这个组里 也就是你说的产品名称、规格一样的产品

2009年12月02日 16:59
0 0

select * from cp a where a.产品名称 in(select distinct b.产品名称,b.规格 form cp b)

2009年12月02日 16:33
0 0

上个写错了, 应该是下面这样

   select 产品名称, 规格  
   from cp  
   group by 产品名称, 规格
   having count(产品编号) > 1  

2009年12月02日 16:32
0 0

select 产品名称, 规格
from cp
group by 产品编号
having count(*) > 1

2009年12月02日 16:31

相关推荐

    SqlServer连接工具

    SQL Server连接工具是数据库管理员和开发人员用于与Microsoft SQL Server交互的重要软件。这些工具提供了多种功能,包括数据库的创建、管理、查询、备份、恢复以及性能优化等。在本篇文章中,我们将深入探讨SQL ...

    SqlDbx连接oracle

    首先,连接Oracle数据库通常需要Oracle客户端软件,但这里提到的“Sqldbx连接oracle,不用安装client”,意味着SqlDbx可能通过一种无需完整Oracle客户端的方式来实现连接。这种连接方式通常依赖于Oracle的Instant ...

    oracle sqldeveloper连接mysql、SQLServer第三方dll

    解决oracle sqldeveloper无法连接mysql、SQLServer问题,sqlDeveloper是ORACLE数据库开发工具,自带的是无法连接MS SQL Server以及mysql的,想连接的话需要第三方工具。 使用方法: 解压出来后将2个jar放入jlib...

    如何连接SQL数据库

    本文将深入探讨如何连接SQL数据库,同时也会提及Access作为参考。 一、SQL数据库连接基础 SQL数据库连接涉及几个关键要素:数据库服务器、数据库名、用户名、密码以及连接驱动。以下是一般的连接步骤: 1. **选择...

    SQL连接器 SQL连接器

    SQL连接器是数据库管理系统与应用程序之间的重要桥梁,它允许程序通过特定的接口与各种数据库进行交互,从而实现数据的查询、插入、更新和删除等操作。在本文中,我们将深入探讨SQL连接器的工作原理、常见类型以及...

    sqlserver连接字符串大全

    ### SQL Server连接字符串详解 在IT领域中,数据库的连接是进行数据操作的基础步骤之一。本文将基于“SQL Server连接字符串大全”的主题,详细介绍不同版本的SQL Server(如2000、2005等)及其不同环境下的连接字符...

    如何查看sql server数据库连接数

    * 系统变量 `@@CONNECTIONS` 返回自上次启动 SQL Server以来连接或试图连接的次数。 * 系统变量 `@@MAX_CONNECTIONS` 返回 SQL Server 上允许的同时用户连接的最大数。 * 系统存储过程 `SP_WHO` 提供关于当前 SQL ...

    SQL server 连接测试工具

    "SQL server 连接测试工具"就是为了满足这一需求而设计的,它帮助用户验证与SQL Server实例的连接,并在连接成功后将相关信息写入配置文件,简化了数据库管理的工作流程。 1. **连接测试**:连接测试工具的主要功能...

    Sqldbx连接OracleX64位,前一个版本放少东西了

    本问题涉及的是使用Sqldbx这款软件连接64位Oracle数据库时遇到的问题及其解决方案。首先,我们来详细解析这个问题的背景和解决方案。 标题“Sqldbx连接OracleX64位,前一个版本放少东西了”指出,用户在尝试使用Sql...

    sql_server连接Oracle方法(最全)

    本文将详细介绍如何在 SQL Server 中连接 Oracle 数据库,并解决在连接过程中可能出现的问题。 安装 Oracle 客户端程序 在 SQL Server 所在服务器中安装 Oracle 客户端程序是一个重要的步骤。这一步骤可以帮助我们...

    SQL SERVER连接oracle数据库几种方法

    SQL SERVER 连接 Oracle 数据库几种方法 在实际开发中,我们经常需要在 SQL Server 中连接 Oracle 数据库,以便实现数据交换和集成。那么,如何在 SQL Server 中连接 Oracle 数据库呢?下面我们将介绍几种常见的...

    sqlserver 连接 账户sa

    在文档中提到作者在连接SQL Server 2008时遇到了一些问题,但是在参考了某些资料后解决了难题。由于文档内容实际并未给出,我们将基于sa账户和SQL Server连接的常见知识点进行详细说明。 首先,sa账户的使用场景...

    sql连接myeclipse与sql的连接

    sql连接myeclipse与sql的连接

    SQL server 2005 Express与速达的连接问题

    ### SQL Server 2005 Express与速达的连接问题详解 #### 一、问题背景 在使用SQL Server 2005 Express时,如果遇到速达软件无法连接到数据库的情况,这通常是由多种因素导致的。根据描述,这里主要讨论的是安装了随...

    SQLTools sql连接工具

    SQLTools sql连接工具SQLTools sql连接工具SQLTools sql连接工具

    sql server客户端连接工具

    SQL Server客户端连接工具是数据库管理员和开发人员用来与Microsoft SQL Server进行交互的重要工具。它提供了图形用户界面(GUI)和命令行选项,使得用户能够轻松地执行查询、管理数据库对象以及进行其他数据库维护...

    SQLDBX 连接多种类型的数据库

    SQLDBX是一款强大的数据库管理工具,它允许用户方便地连接并操作多种类型的数据库系统,包括SQL SERVER的各种版本、Oracle的不同版本以及MYSQL等。这款软件以其高效、易用和跨平台的特点,深受数据库管理员和开发...

    SqlDbx 数据库连接工具 可连接多个数据库

    SqlDbx是一款强大的数据库连接工具,专为数据库管理员和开发人员设计,支持连接多种类型的数据库。这款工具以其高效、易用和多功能性而备受推崇。下面将详细介绍SqlDbx的功能特性以及如何使用它来连接和管理不同的...

    ASP连接SQL2005数据库连接代码.

    在IT领域,特别是Web开发...通过以上内容,我们不仅了解了ASP连接SQL Server 2005的多种方法,还学习了如何动态构建连接字符串以及如何判断连接状态,这对于开发人员在实际项目中高效、安全地处理数据库操作至关重要。

    SQLserver连接问题解决办法

    (一台机器即作服务器又作客户机,软件连接中出现: [DBNETLIB][ConnectionOpen(connect()).]SQL Server 不存在或拒绝访问。 现从网上查阅问题解决办法有如下几种: (A)1:你如果是独立上网的请把21端口打开.局域网...

Global site tag (gtag.js) - Google Analytics