thinkphp中多表查询中防止数据重复的sql语句(必看)

yipeiwu_com6年前PHP代码库

下面先来看看例子:

table

id name
1 a
2 b
3 c
4 c
5 b

库结构大概这样,这只是一个简单的例子,实际情况会复杂得多。

select *, count(distinct name) from table group by name

结果:

id name count(distinct name)
1 a 1
2 b 1
3 c 1

最后一 项是多余的,不用管就行了

tp2.0手册   搜索连贯操作 可看到相关的资料

SELECT cat_id, COUNT(*) AS goods_num FROM talble GROUP BY cat_id

$M = M('table');
$rs = $M->field(array('cat_id','count(*)'=>'goods_num'))->group('cat_id')->select();

echo $M->getLastSQL();
print_r($rs);

以上就是小编为大家带来的thinkphp中多表查询中防止数据重复的sql语句(必看)的全部内容了,希望对大家有所帮助,多多支持【宜配屋www.yipeiwu.com】~

相关文章

php 基础函数

话不多说,如下所示: <?php //生成随机数 和 时间函数 //echo rand(); //echo "<br>"; //echo rand(0,10...

PHP中查询SQL Server或Sybase时TEXT字段被截断的解决方法

Author: Wenlong Wu 一、针对MS SQL SERVER数据库    有两种解决方案,如下:    修改php.ini来实现: 打开php.ini,可看到mssql.te...

PHP设计模式之命令模式的深入解析

PHP设计模式之命令模式的深入解析

命令模式(Command),命令模式是封装一个通用操作的机制。 如果你熟悉C或PHP,你可能已经遇到过Command,它相当于程序中的:回调(callback)。回调通常使用一个函数指针...

php chr() ord()中文截取乱码问题解决方法

复制代码 代码如下:<?php $lenth = 19; $str = "怎么将新闻的很长的标题只显示前面一些字,后面用.....来代替?"; echo strlen($str)&...

php中修改浏览器的User-Agent来伪装你的浏览器和操作系统

得到HTTP_USER_AGENT 的方法很简单,比如php代码: 复制代码 代码如下: <?php print_r($_SERVER); ?> 复制代码 代码如下: &l...