首页 / PHP / 这个查询语句应该怎么写才正确
这个查询语句应该怎么写才正确
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了这个查询语句应该怎么写才正确,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4030字,纯文字阅读大概需要6分钟。
内容图文
![这个查询语句应该怎么写才正确](/upload/InfoBanner/zyjiaocheng/200/1451e72ee23c44f0b8455da8506e17e7.jpg)
回复讨论(解决方案)
表??,????,查?後?果。
你要提供?些才可以知道?句怎??啊。
DISTINCT 是关键字,而不是函数
不能这样用:DISTINCT(dname)
用了也没效果
但可以放在聚类函数中,比如 count(DISTINCT dname) 统计 dname 有多少种状态
这是我想要的,但是还是一只菜鸟,不知该怎么写!
public function exportTJ(){ //$objReader = PHPExcel_IOFactory::createReader('Excel5'); header("Content-Type: text/html; charset=utf-8"); header("Content-type:application/vnd.ms-execl"); header("Content-Disposition:filename=tongji.xls"); // 以下\t代表横向跨越一格,\n 代表跳到下一行,可以根据自己的要求,增加相应的输出相,要和循环中的对应哈 //字段 $letterArr=explode(',',strtoupper('a,b')); $arr=array( array('en'=>'d_name','cn'=>'门店名称'), array('en'=>'tjs','cn'=>'领取次数'), ); $chengItem=array('piaomianjia','shuifei','yingshoujine','yingfupiaomianjia','yingfushuifei','yingfujine','dailishouru','fandian','jichangjianshefei','ranyoufei'); $i=0; $fieldCount=count($arr); $s=0; //thead foreach ($arr as $f){ if ($s<$fieldCount-1){ echo iconv('utf-8','gbk',$f['cn'])."\t"; }else { echo iconv('utf-8','gbk',$f['cn'])."\n"; } $s++; } // $db=M('Lottery_record'); $sns=$db->field('DISTINCT(dname) AS d_name,COUNT(dname) AS tjs')->where(array('lid'=>intval($_GET['id']),'islottery'=>1))->GROUP('dname')->order('tjs DESC')->select(); //$sns=$db->where(array('lid'=>intval($_GET['id']),'islottery'=>1))->order('tjs DESC')->select(DISTINCT(dname) AS d_name, COUNT(dname) AS tjs); //$sns=array('select DISTINCT(dname) AS d_name, COUNT(dname) AS tjs from $db where 'lid'==intval($_GET['id']) and 'islottery'==1 GROUP BY dname ORDER BY tjs DESC'); if ($sns){ if ($sns[0]['token']!=$this->token){ exit('no permission'); } foreach ($sns as $sn){ $j=0; foreach ($arr as $field){ $fieldValue=$sn[$field['en']]; switch ($field['en']){ default: break; case 'd_name': $fieldValue=iconv('utf-8','gb2312',$fieldValue); break; } if ($j<$fieldCount-1){ echo $fieldValue."\t"; }else { echo $fieldValue."\n"; } $j++; } $i++; } } exit(); }
field('dname AS d_name,COUNT(dname) AS tjs')
GROUP('d_name')
麻烦版主再帮我看看,怎么是这个结果呢
public function exportTJ(){
//$objReader = PHPExcel_IOFactory::createReader('Excel5');
header("Content-Type: text/html; charset=utf-8");
header("Content-type:application/vnd.ms-execl");
header("Content-Disposition:filename=tongji.xls");
// 以下\t代表横向跨越一格,\n 代表跳到下一行,可以根据自己的要求,增加相应的输出相,要和循环中的对应哈
//字段
$letterArr=explode(',',strtoupper('a,b'));
$arr=array(
array('en'=>'d_name','cn'=>'门店名称'),
array('en'=>'tjs','cn'=>'领取次数'),
);
$chengItem=array('piaomianjia','shuifei','yingshoujine','yingfupiaomianjia','yingfushuifei','yingfujine','dailishouru','fandian','jichangjianshefei','ranyoufei');
$i=0;
$fieldCount=count($arr);
$s=0;
//thead
foreach ($arr as $f){
if ($s<$fieldCount-1){
echo iconv('utf-8','gbk',$f['cn'])."\t";
}else {
echo iconv('utf-8','gbk',$f['cn'])."\n";
}
$s++;
}
//
$db=M('Lottery_record');
$sns=$db->where(array('lid'=>intval($_GET['id']),'islottery'=>1,'dname' != null))->field('COUNT(sn) as tjs,dname as d_name')->GROUP('d_name')->order('tjs DESC')->select();
//$sns=$db->where(array('lid'=>intval($_GET['id']),'islottery'=>1))->order('tjs DESC')->select(DISTINCT(dname) AS d_name, COUNT(dname) AS tjs);
//$sns=array('select DISTINCT(dname) AS d_name, COUNT(dname) AS tjs from $db where 'lid'==intval($_GET['id']) and 'islottery'==1 GROUP BY dname ORDER BY tjs DESC');
if ($sns){
if ($sns[0]['token']!=$this->token){
exit('no permission');
}
foreach ($sns as $sn){
$j=0;
foreach ($arr as $field){
$fieldValue=$sn[$field['en']];
switch ($field['en']){
default:
break;
case 'tjs':
$fieldValue=iconv('utf-8','gb2312',$fieldValue);
break;
case 'd_name':
$fieldValue=iconv('utf-8','gb2312',$fieldValue);
break;
}
if ($j<$fieldCount-1){
echo $fieldValue."\t";
}else {
echo $fieldValue."\n";
}
$j++;
}
$i++;
}
}
exit();
}
}
你这种写法应该是thinkphp吧?
据我所知好像tp不支持这样的,不过你可以写原生的sql。
内容总结
以上是互联网集市为您收集整理的这个查询语句应该怎么写才正确全部内容,希望文章能够帮你解决这个查询语句应该怎么写才正确所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。