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

yipeiwu_com7年前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英文单词统计器

本文实例为大家分享了英文单词统计器php 实现,供大家参考,具体内容如下 程序开始运行, 按"浏览"钮选择一个英文文档, 再按"统计 Statistics"钮, 即可得到按字母顺序列出的...

php分页函数完整实例代码

本文分享一例php分页函数完整实例代码,使用此函数实现分页效果很不错。分享给大家供大家参考。 具体功能代码如下: <?php /* * Created on 2011-...

PHP pthread拓展使用和注意点

一. 线程的创建和使用1. Thread类基本的创建和使用:<?php //通过继承Thread类来实现自己的线程类MyThread class MyThrea...

php中邮箱地址正则表达式实现与详解

首先附上代码 复制代码 代码如下: ^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$ 在这段正则表达式中,“+”表示前面的字符串连续出现一...

PHP并发多进程处理利器Gearman使用介绍

PHP并发多进程处理利器Gearman使用介绍

工作中我们有时候会遇到比如需要同时发布数据到多个个服务器上,或者同时处理多个任务。可以使用PHP的curl_multi的方式并发处理请求,但是由于网络和数据以及各个服务器等等的一些情况导...