`
kevinye
  • 浏览: 37121 次
文章分类
社区版块
存档分类
最新评论

SQL问题

    博客分类:
  • hh
阅读更多
select distinct g.*
from groups g inner join topics t on (t.group_id = g.id)
order by t.created_at desc
limit 0,6

为什么结果不对?
相对于

select   g.*
from groups g inner join topics t on (t.group_id = g.id)
order by t.created_at desc
limit 0,6明显不一致
分享到:
评论
15 楼 过儿oO 2007-06-21  
kevinye 写道
好的,那就多谢了,
我想找出最近发表话题(topic)的小组(group)
topic中有一个group_id
按发表话题的时间顺序排列选出来的小组


你详细点啊,表的结构给描述一下,不是2个表呢吗
14 楼 kevinye 2007-06-21  
好的,那就多谢了,
我想找出最近发表话题(topic)的小组(group)
topic中有一个group_id
按发表话题的时间顺序排列选出来的小组
13 楼 过儿oO 2007-06-20  
你想做什么吧,我看看写一个行不行
12 楼 kevinye 2007-06-20  
SELECT g . * , count( DISTINCT t.group_id )
FROM groups g
INNER JOIN topics t ON ( t.group_id = g.id )
GROUP BY t.group_id
ORDER BY t.created_at DESC
LIMIT 0 , 6

这样写似乎也不对
11 楼 过儿oO 2007-06-18  
我给你回的那个a,b,c,d例子是记录,然后你针对一个distinct它要去掉重复记录,我举的那里是一堆重复记录嘛,你用distinct他必然去掉
10 楼 过儿oO 2007-06-18  
kevinye 写道
SELECT g . * , count( DISTINCT t.group_id )
FROM groups g
INNER JOIN topics t ON ( t.group_id = g.id )
GROUP BY t.group_id
ORDER BY t.created_at DESC
LIMIT 0 , 6

其原因是distinct只能返回它的目标字段,而无法返回其它字段


当然,distinct就是这么用的,你想让它返别的它也不好使啊
你distinct *一下,袄袄出错,哈哈
9 楼 kevinye 2007-06-17  
SELECT g . * , count( DISTINCT t.group_id )
FROM groups g
INNER JOIN topics t ON ( t.group_id = g.id )
GROUP BY t.group_id
ORDER BY t.created_at DESC
LIMIT 0 , 6

其原因是distinct只能返回它的目标字段,而无法返回其它字段
8 楼 过儿oO 2007-06-01  
我举个例子但和你说的那个不一定一样,应该是先取记录吧,就是那个select先弄出来,假如记录是a,a,b,b,c,c,d,d,e,e,f,f,g,g,h,h,i,i

第一把,先取吧是a,a,b,b,c,c,.....假如再倒排下c,c,b,b,a,a,....完了,再按你那个索引取记录6条,c,c,b,b,a,a完事

第二把,先取吧a,b,c,d,e,f,g,h,i完了,再倒排下i,h,g,e,d,c,b,a好了再按你的那个索引取记录6条,i,h,g,e,d,c完事

结果是没一个一样的
7 楼 kevinye 2007-06-01  
why?
6 楼 过儿oO 2007-05-31  
<br/>
<strong>kevinye 写道:</strong><br/>
<div class='quote_div'>select distinct g.*<br/>
from groups g inner join topics t on (t.group_id = g.id)<br/>
order by t.created_at desc<br/>
limit 0,6<br/>
<br/>
为什么结果不对?<br/>
相对于<br/>
<br/>
select   g.*<br/>
from groups g inner join topics t on (t.group_id = g.id)<br/>
order by t.created_at desc<br/>
limit 0,6明显不一致</div>
<br/>
<br/>
我倒,我才看出来,主要问题在limit 0,6这个条件,你限制了取的条数,那么一个是取distinct一个直接取,这当然不一样了<br/>
<br/>
5 楼 kevinye 2007-05-31  
所以才奇怪
4 楼 过儿oO 2007-05-31  
不太可能吧,distinct只是去掉重复条而已啊
肯定会有啊
难道还能丢了不成
3 楼 kevinye 2007-05-31  
?怎么
2 楼 kevinye 2007-05-31  
排在 g.* 这样选出来的,不在distinct g.*选出来的里面
1 楼 ddandyy 2007-05-31  
写的不一样  当然不一至
你想说什么

相关推荐

    DB2常见SQL问题解释

    以下是对部分DB2常见SQL问题及其解释的详细阐述,旨在帮助数据库管理员和技术人员更深入地了解这些问题,并提供有效的解决方案。 ### 1. 警告信息与错误代码 DB2通过一系列的错误代码(如SQL0001N至SQL0157N)来...

    SQL问题合集

    SQL问题合集

    sql 面试问题集

    SQL面试问题集通常包含多种级别的SQL问题,从基础知识点到高级概念,这些问题旨在考察求职者对SQL的掌握程度以及他们解决数据库相关问题的能力。 在数据库领域中,SQL语言是核心技能之一。尽管SQL语言有标准规范,...

    SQL.Cookbook(中文高清PDF)

    解决日常编程问题的解决方案的数量仅取决于需要解决的问题的数量,《SQL Cookbook中文版》没有覆盖所有问题,事实上也不可能覆盖;然而从中可以找到许多共同的问题及其解决方案,这些解决方案中用到许多技巧,读者学...

    SQL 语法与问题集

    SQL 语法与问题集 通用办公生产应用程序。   使用图形用户界面 (GUI) 的应用程序,使用户得以选择包含要查看的数据的表和列。   使用通用语言语句确定用户所要查看数据的应用程序。   将其数据存储于 SQL ...

    收获,不止SQL优化--抓住SQL的本质1

    解决SQL问题的具体技术 - **体系结构**:了解数据库的整体架构对于优化至关重要。 - **逻辑结构**:合理设计表的逻辑结构能够有效提升查询效率。 - **表设计**:正确的表设计可以减少不必要的查询复杂度。 - **索引...

    SqlServer存储过程及调试指南

    - 诊断和修复T-SQL问题 - 批量编辑SQLServer存储过程 - SQLServer 2005中升级存储过程 6. 存储过程修改与变更:在对SQLServer存储过程进行修改和变更时,可能会遇到与现有数据库函数冲突的问题,需要掌握正确的...

    JaVa连接SQL问题

    错误提示

    ORACLE__SQL.pdf SQL.Cookbook.pdf

    "SQL.Cookbook.pdf"可能是一本实用的SQL问题解决方案集,它通常包含各种实际场景下的SQL查询示例和最佳实践: 1. **查询技巧**:提供解决特定查询问题的“食谱”,如聚合函数、窗口函数、集合运算和联接策略。 2. ...

    SQL Cookbook中文版

    例如,假如你有一个特定的业务问题要解决,目前只用SQL检索数据,而其他复杂的业务逻辑由其他语言完成,如果代码没有问题,而且性能也过得去,那么,谢天谢地。我绝对无意建议你扔掉以前的代码重新寻求完全SQL 的...

    Sql 问题,时间顺序问题求解

    一个Sql难题,不知道如何解决。在论坛中发贴求解.

    SQL Antipatterns.pdf

    本书的章节1“Introduction”引入了讨论的主题,即在实践中遇到的SQL问题和不良模式。作者通过拒绝只支持SELECT语句的SQL工作来阐述一个观点:即使只是SQL的一个小部分,也可能涉及到复杂性和潜在的问题。SELECT语句...

    SQL争霸赛决赛试题附答案

    【SQL争霸赛决赛试题.doc】可能是比赛的题目文档,包含了各种SQL问题,这些问题可能涵盖基础查询、联接操作、子查询、聚合函数、窗口函数、存储过程、触发器等。参赛者需要理解问题背景,正确编写SQL语句以满足需求...

    SQL解惑_pdf_againstccb_

    10. **问题解答与分析方法**:作者分享了解决SQL问题的策略和思考过程,帮助读者培养解决问题的能力,提升SQL编程水平。 通过对《SQL解惑(第2版)》的学习,无论是初学者还是有一定经验的数据库管理员,都能从中...

    sql 复习资料

    这可能是一个文本文件,包含了关于SQL的学习资源推荐,比如经典的SQL教材、在线课程链接或者是各种SQL问题的解答。用户可以通过阅读这个文件来获取一些学习路径的建议,了解哪些知识点是重点,以及如何有效地学习和...

    新一代智能SQL语句优化技术

    SQL问题则涵盖语法错误、复杂查询的优化以及未优化的JOIN操作等。 数据库系统中,SQL语句首先被服务器接收,然后进行解析。数据库的优化器会根据语句内容生成多种可能的执行计划,并对每个计划的成本进行估计,最终...

    SQL语言艺术

    在探讨SQL性能优化的过程中,作者将SQL问题的解决比作战争策略的制定。正如古代将领需遵循《孙子兵法》中的原则来指挥战争,现代开发者也应遵循一系列原则来优化SQL代码。这些原则既包括技术层面的知识,如索引选择...

    SQL入门书籍

    3. **《SQL Cookbook》**:这本书更像一本SQL问题解决方案的集合,它提供了大量解决实际问题的代码片段,覆盖了SQL的各个方面,如数据筛选、排序、分组、联接、窗口函数等。书中强调实践,帮助读者在面对实际工作中...

Global site tag (gtag.js) - Google Analytics