登录  /  注册
循环1个结果集,
php中文网
发布: 2016-06-23 14:09:43
原创
703人浏览过

表1

--------------------------------------------------------
| id | leiName | Nid | NName | Tid | Title |
| 2 | 类名1 | 4   | 手机 | 99 | ddddd |
| 3 | 类名2 | 5   | 手机1 | 98 | dererd |
| 6 | 类名3 | 3   | 手机 | 97 | dbbvd |
| 3 | 类名6 | 8   | 手机3 | 96 | 31231dd |


求,根据 Tid的从大到小排列,排3个结果,如 NName 相同的忽略

手机
手机1
手机//相同的忽略
手机3

mysql语句怎么写的。。


回复讨论(解决方案)

group by NName

select * from
(select * from 表1 order by Tid desc) tt
group by NNname;

select * from
(select * from 表1 order by Tid desc) tt
group by NNname;

tt 是表名1吗?

tt 是别名


tt 是别名

最后的结果集排序,乱了。没按 Tid 排序。

你的sql是如何写的。建议你贴出
create table....;
insert into table....; 语句

及期望结果,并给以简单的算法描述。

你的sql是如何写的。建议你贴出
create table....;
insert into table....; 语句

及期望结果,并给以简单的算法描述。

--------------------------------------------------------
| id | leiName | Nid | NName | Tid | Title |
| 2 | 类名1 | 4   | 手机 | 99 | ddddd |
| 3 | 类名2 | 5   | 手机1 | 98 | dererd |
| 6 | 类名3 | 3   | 手机 | 97 | dbbvd |
| 3 | 类名6 | 8   | 手机3 | 96 | 31231dd |


SQL 视图就这样的哦。然后就是根据 Tid来排序,

99 手机 ddddd
98 手机1 dererd 
97 发现手机已经出现了,忽略,主要是怎么忽略这个。
96 手机2 31231dd

算了。我看使用数组来过滤好了。



Array
(
[id] => 39
[xClass] => 超级王
[Title] => 方式发送到
[NURL] =>
[CreateDate] => 2013-05-12 15:28:46
)
1
Array
(
[id] => 32
[DCName] => 玄
[CURL] =>
[Item1] => 风
[Nid] => 62325
[xClass] => 重天
[Title] => fsfsd
[CreateDate] => 2013-05-12 15:27:28
)
1
Array
(
[id] => 32
[DCName] => 玄
[CURL] =>
[Item1] => 风
[Nid] => 62324
[xClass] => 重天
[Title] => dddddddd43432
[CreateDate] => 2013-05-12 15:26:54
)

得到这样数组。
xclass = 重天。就排除,留1个。用那个函数。

运行#2的sql代码不行?

贴数组请贴出经 var_export() 后的数据。

$arr=你的数组;$t=array();foreach($arr as $v){    if(!isset($t[$v['xClass']])){	    $t[$v['xClass']]=$v;  	}}print_r(array_values($t));
登录后复制

运行#2的sql代码不行?

贴数组请贴出经 var_export() 后的数据。


得到的结果列表很乱,不是按Tid 排序。同时 当出现1个手机后,第三排在出现没忽略。

while($rsrow=$result->fetch_assoc()){
echo '

';  
print_r($rsrow);
echo '
登录后复制
';
}

得到的数组如下
Array
(
[id] => 3
[DCName] => 玄
[CURL] => 3
[Item1] => 唐
[Nid] => 62326
[xClass] => 超级王
[Title] => 方式发送到
[NURL] =>
[CreateDate] => 2013-05-12 15:28:46
)

Array
(
[id] => 3
[DCName] => 玄
[CURL] => 3
[Item1] => 唐
[Nid] => 62325
[xClass] => 重天
[Title] => fsfsd
[NURL] =>
[CreateDate] => 2013-05-12 15:27:28
)

Array
(
[id] => 3
[DCName] => 玄
[CURL] => 3
[Item1] => 唐少
[Nid] => 62324
[xClass] => 重天
[Title] => dddddddd43432
[NURL] =>
[CreateDate] => 2013-05-12 15:26:54
)

最终过滤 当 键 xClass的值 重天出现过1次后,以后则忽略。
这个函数时?

select * from 表1 group by NNname order by Tid desc

while($rsrow=$result->fetch_assoc()){

$arr[]=$rsrow;
}

然后用 #10 代码

孩纸,这样子的问题你需要去查资料,这样等这别人直接写出来的结果对你没什么帮助~~~~

相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 技术文章
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2023 //m.sbmmt.com/ All Rights Reserved | 苏州跃动光标网络科技有限公司 | 苏ICP备2020058653号-1

 | 本站CDN由 数掘科技 提供

登录PHP中文网,和优秀的人一起学习!
全站2000+教程免费学