このクエリ ステートメントは正しくどのように記述すべきでしょうか?
$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();
ディスカッション (解決策)
目次、調査と結果。
文の内容を知る前に、いくつかの情報を提供する必要があります。
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 は、1 つのグリッドを水平に横切ることを表します。n は、次の行にジャンプすることを意味します。独自の要件に従って、対応する出力フェーズを追加できます。これは、ループ内のフェーズに対応する必要があります
//Field
$letterArr=explode( ',',strtoupper('a,b'));
$arr=array(
array('en'=>'d_name','cn'=>'店舗名'),
array('en '=>'tjs','cn'=>' 受信回数'),
); $chengItem=array('piaomianjia','shuifei','yingshojine','yingfupiamianjia','yingfushuifei' ,'yingFujine','dailishour','fandian','jichangjianshefei', 'ranyoufei');
$fieldCount=count($arr)
//thead; foreach ($arr as $f){
if ($s 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']) と 'islottery'==1 GROUP BY dname ORDER BY tjs DESC');
if ($sns){
if ($sns[0]['token']!=$this->token) {
exit('許可なし');
}
foreach ($sns as $sn){
$j=0;
foreach ($arr as $field){
$fieldValue=$sn[$field[' ']];
スイッチ ($field['en']){
デフォルト:
ケース 'tjs':
$fieldValue=iconv('utf-8','gb2312',$fieldValue); ;
case 'd_name':
$fieldValue=iconv('utf-8 ','gb2312',$fieldValue);
if ($j<$fieldCount-1){
echo $fieldValue." t";
}else {
echo $fieldValue."n";
}
$j++;
}
$i++;
}
}
exit();
}
}
書き方は次のようにする必要があります。 thinkphpですよね?
私の知る限り、tp はこれをサポートしていませんが、ネイティブ SQL を書くことはできます。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









12306 チケット予約アプリの最新バージョンをダウンロードします。誰もが非常に満足している旅行チケット購入ソフトウェアです。行きたい場所に行くのに非常に便利です。ソフトウェアには多くのチケット ソースが提供されています。本物のチケットを渡すだけで済みます。 - 氏名認証によるオンラインチケット購入 全ユーザー 旅行券や航空券を簡単に購入でき、さまざまな割引が受けられます。また、チケットを入手するための事前予約も開始できます。ホテルや特別な車の送迎も予約できます。これを使用すると、ワンクリックで行きたい場所に行き、チケットを購入できます。旅行がより簡単で便利になり、すべての人に旅行体験を提供します編集者はオンラインで詳細を説明するようになり、12306 人のユーザーに過去のチケット購入記録を表示する方法が提供されます。 1. Railway 12306 を開き、右下隅の [My] をクリックして、[My Order] をクリックします。 2. 注文ページで [Paid] をクリックします。 3. 有料ページにて

Xuexin.com で私の学歴を確認するにはどうすればよいですか? Xuexin.com で学歴を確認できますが、多くのユーザーは Xuexin.com で学歴を確認する方法を知りません。次に、エディターが Xuexin.com で学歴を確認する方法に関するグラフィック チュートリアルを提供します。興味のあるユーザーはぜひ見に来てください! Xuexin.com の使用方法チュートリアル: Xuexin.com で学歴を確認する方法 1. Xuexin.com の入り口: https://www.chsi.com.cn/ 2. Web サイトのクエリ: ステップ 1: Xuexin.com のアドレスをクリックします。上記をクリックしてホームページに入ります [教育クエリ]をクリックします; ステップ2: 最新のWebページで下図の矢印に示すように[クエリ]をクリックします; ステップ3: 新しいページで[学術単位ファイルにログイン]をクリックします; ステップ4: ログインページで情報を入力し、[ログイン]をクリックします。

MySQL と PL/SQL は 2 つの異なるデータベース管理システムであり、それぞれリレーショナル データベースと手続き型言語の特性を表しています。この記事では、具体的なコード例を示しながら、MySQL と PL/SQL の類似点と相違点を比較します。 MySQL は、構造化照会言語 (SQL) を使用してデータベースを管理および操作する、一般的なリレーショナル データベース管理システムです。 PL/SQL は Oracle データベースに固有の手続き型言語であり、ストアド プロシージャ、トリガー、関数などのデータベース オブジェクトを記述するために使用されます。同じ

Apple の携帯電話を使用してアクティベーション日を確認する場合、携帯電話のシリアル番号から確認するのが最善の方法ですが、Apple の公式 Web サイトにアクセスし、コンピュータに接続して 3 番目のバージョンをダウンロードすることでも確認できます。 -party ソフトウェアを使用して確認します。 Apple 携帯電話のアクティベーション日を確認する方法 回答: シリアル番号のクエリ、Apple 公式 Web サイトのクエリ、コンピュータのクエリ、サードパーティ ソフトウェアのクエリ 1. ユーザーにとって最善の方法は、自分の携帯電話のシリアル番号を知ることです。シリアル番号を確認するには、[設定]、[一般]、[このマシンについて] を開きます。 2. シリアル番号を使用すると、携帯電話のアクティベーション日を知るだけでなく、携帯電話のバージョン、携帯電話の製造元、携帯電話の工場出荷日などを確認することもできます。 3. ユーザーは Apple の公式 Web サイトにアクセスしてテクニカル サポートを見つけ、ページの下部にあるサービスと修理の欄を見つけて、そこで iPhone のアクティベーション情報を確認します。 4. ユーザー

タイトル: Oracle を使用してテーブルがロックされているかどうかをクエリする方法Oracle データベースでは、テーブル ロックとは、トランザクションがテーブルに対して書き込み操作を実行しているときに、他のトランザクションがテーブルに対して書き込み操作を実行したり、テーブルに構造変更 (列の追加、行の削除など) を加えたりするときにブロックされることを意味します。 、など)。実際の開発プロセスでは、トラブルシューティングを改善し、関連する問題に対処するために、テーブルがロックされているかどうかをクエリする必要があることがよくあります。この記事では、Oracle ステートメントを使用してテーブルがロックされているかどうかをクエリする方法と、具体的なコード例を紹介します。テーブルがロックされているかどうかを確認するには、

フォーラムはインターネット上で最も一般的な Web サイト形式の 1 つで、ユーザーに情報を共有し、交換し、議論するためのプラットフォームを提供します。 Discuz は一般的に使用されているフォーラム プログラムであり、多くのウェブマスターはすでによく知っていると思います。 Discuz フォーラムの開発および管理中に、分析または処理のためにデータベース内のデータをクエリすることが必要になることがよくあります。この記事では、Discuz データベースの場所をクエリするためのヒントをいくつか紹介し、具体的なコード例を示します。まず、Discuz のデータベース構造を理解する必要があります。

BitTorrent Coin (BTT) の最新価格を確認する BTT は、ファイルの共有とダウンロードに対して BitTorrent ネットワーク ユーザーに報酬を与えるために使用される TRON ブロックチェーン上の暗号通貨です。 BTT の最新価格を確認する方法は次のとおりです。信頼できる価格チェック Web サイトまたはアプリを選択してください。一般的に使用される価格クエリ Web サイトには、次のものがあります。 CoinMarketCap: https://coinmarketcap.com/Coindesk: https://www.coindesk.com/Binance: https://www.binance.com/ Web サイトまたはアプリ BTT で検索します。 BTT の最新の価格を確認してください。注: 暗号通貨の価格

通神コインの最新価格を確認するにはどうすればよいですか?トークンは、ゲーム内アイテム、サービス、アセットの購入に使用できるデジタル通貨です。これは分散型であり、政府や金融機関によって管理されていないことを意味します。通神コインの取引はブロックチェーン上で行われます。ブロックチェーンは、通神コインのすべての取引情報を記録する分散台帳です。トークンの最新の価格を確認するには、次の手順を使用できます。 信頼できる価格確認 Web サイトまたはアプリを選択します。一般的に使用される価格クエリ Web サイトには、次のものがあります。 CoinMarketCap: https://coinmarketcap.com/Coindesk: https://www.coindesk.com/ Binance: https://www.bin
