ホームページ > バックエンド開発 > PHPチュートリアル > phpで特定の月や日のデータをクエリして出力する方法(記事アーカイブ機能)

phpで特定の月や日のデータをクエリして出力する方法(記事アーカイブ機能)

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 13:18:17
オリジナル
1074 人が閲覧しました

phpで特定の月や日のデータをクエリして出力する方法(記事アーカイブ機能)
has Articles table

id class title content pubtime
1 10 title 1 content 1 1342756599
2 11 タイトル 2 内容 2 1339392385
3 12 タイトル 3 内容 3 1339390661
4 10 タイトル 4 内容 4 1339139926
5 13 タイトル 5 内容 5 1339139892
6 16 タイトル 6 内容 6 275662 4

クエリの望ましい結果は次のとおりです:
1. 2012 年 8 月と 2012 年 6 月に記事がある場合、2012 年 8 月と 2012 年 6 月のリンクを出力します。概要と記事の数を計算するのが最適です。がある。 。
2. 2012年7月16日と2012年7月28日の記事がある場合、2012年7月28日と2012年7月16日のリンクが逆順に出力されるので、まとめと記事数を計算すると良いでしょう。記事があります。

書き方はわかりませんが、アイデアをいくつかあげることはできます。

-----解決策---------

SQL コード
SELECT count(1) FROM `articles` WHERE `pubtime` > 6 月 1 日の 0:00 のタイムスタンプおよび 7 月 1 日の 0:00 の `postdate` のタイムスタンプ
<br><font color="#e78608">------解決策---------</font><br>
ログイン後にコピー
話し合う
SELECT count(1) FROM `articles` WHERE `pubtime` > 6 月 1 日の 0:00 のタイムスタンプおよび 7 月 1 日の 0:00 の `postdate`

------解決策---------
SQL コード
>日付(公開時間)ごとにグループ化された記事からカウント(1)、日付(公開時間)を選択します。
<br>------解決策------<font color="#e78608"></font>まず、次のようないくつかのポイントのタイムスタンプを取り出します。 2012 年 8 月と 2012 年 6 月。 <br>SQL クエリの結合は簡単になるはずです。 <br>心配しないで、試してみてください
<br><br>------解決策------------------<font color="#e78608"></font>
1. <br>FROM_UNIXTIME(pubtime, '%Y-%m') による記事グループから pubtime として FROM_UNIXTIME(pubtime, '%Y-%m')、cnt として count(*) を選択します<br>
<br><br>------解決策------------------<font color="#e78608"></font>これは月ごとです: <br><br>SQL コード
ログイン後にコピー
>抽出 (pubtime からの年月) による記事グループから count(1)、抽出 (pubtime からの year_month) を選択します。
<br>------解決策---------<font color="#e78608"></font>SQL で関数を使用するときに問題があります。影響ありSQL の実行効率、使用されるフィールドの主キーなどは影響しない場合があります<br>
ログイン後にコピー
ディスカッション
これは毎月です:
SQL コード
> ;select count(1)、extract(pubtime から year_month) で記事グループから抽出(pubtime から year_month);

Quote:

SQL コード
>select count(1) ) 、記事の日付(公開時間)……


------解決策---------
話し合う 2012 年 6 月と 2012 年 8 月を一度に確認するにはどうすればよいですか?
1 年は 12 か月あり、各月の明細を作成することはできません。月に 30 日の記事
その方法は次のとおりです


------解決策---------
SQL コード
選択 SUM(CASE when MONTH( FROM_UNIXTIME(pubtime, '%Y-%m-%d'))=6 THEN 1 ELSE 0 END)AS sum_6, SUM(CASE when MONTH( FROM_UNIXTIME(pubtime, '%Y-%m-%d'))=8 THEN 1 ELSE 0 END)AS sum_8 FROM dc_admin
<div class="clear"></div>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート