• ベストアンサー

UNIX時間で今月1日~末日を取得するには・・・

saintandreの回答

回答No.1

UNIX_TIMESTAMP関数を利用して以下のようなSQL文ではどうでしょうか? SELECT * FROM `order` WHERE `order_date` >= UNIX_TIMESTAMP('2009-11-1 00:00:00') AND `order_date` <= UNIX_TIMESTAMP('2009-11-30 23:59:59'); また2009年11月は2009年11月1日0時0分0秒『以上』で2009年12月1日0時0分0秒『より小さい』範囲ですから不等号をきちんと使い分けて以下のようにした方が楽だとおもいます。末日を計算する手間が省けますから。 SELECT * FROM `order` WHERE `order_date` >= UNIX_TIMESTAMP('2009-11-1 00:00:00') AND `order_date` < UNIX_TIMESTAMP('2009-12-1 00:00:00');

関連するQ&A

  • UNIX時間をEXCEL上で日付・時間に変換するには?

    PHPから得られたUNIX時間(1970年1月1日からの秒数)のデータをEXCELで扱いたいのですが、 EXCEL上で、UNIX時間の数値を、日付データと時間データに変換するにはどうすれば良いのでしょうか? ※AccessAnalyzer(http://ax.xrea.com/)からダウンロードした生ログのログイン時間をEXCELで分析するのが目的です。

    • ベストアンサー
    • PHP
  • エポック秒の基点について

    基礎的な質問ですみません。 ------------------------------------------------- my $time1 = timelocal(0,0,9,1,1-1,1970-1900); my $time2 = timelocal(0,0,10,1,1-1,1970-1900); my @ltime = localtime(0); my $time3 = sprintf("%d年%d月%d日%02d時%02d分%02d秒", $ltime[5]+1900,$ltime[4]+1,$ltime[3],$ltime[2],$ltime[1],$ltime[0]); print<<"EOM"; 1970年1月1日9時00分00秒のエポック秒は $time1 です。 1970年1月1日10時00分00秒のエポック秒は $time2 です。 エポック秒 0 は $time3 です。 EOM ------------------------------------------------ と書きます。結果は、 ------------------------------------------------ 1970年1月1日9時00分00秒のエポック秒は -3600 です。 1970年1月1日10時00分00秒のエポック秒は 3600 です。 エポック秒 0 は 1970年1月1日09時00分00秒 です。 ------------------------------------------------ となります。なぜこのように矛盾するのでしょうか。 私が正しく理解できていないだけでしょうか。 教えてください。お願いします。

    • ベストアンサー
    • Perl
  • UNIXタイムスタンプの計算式

    UNIXタイムスタンプを計算したいのですがどのような計算式なのかわからず質問しました。 私の言っている UNIXタイムスタンプとは、1970年1月1日0時0分0秒(GMT:グリニッジ世界標準時)からの通算秒です。 エクセルでこれを自分で年月日時分秒と入力してそれらをUNIXタイムスタンプに変換するのが目的です

  • Linuxの時刻同期の仕組みについて

    Linuxにはハードウェアクロックとソフトウェアクロックがありますが、BIOS クロックやCMOS クロックからハードウェアクロックが取得できない場合、UNIXエポックの1970年1月1日真夜中(午前0時0分0秒)で起動して、その後、NTPサーバーとの時刻同期ができない場合、ソフトウェアクロックは、UNIXエポックの1970年1月1日真夜中(午前0時0分0秒)のままという認識でよろしいでしょうか。 お手数をおかけしますがご教示を頂けますようお願い致します。

  • UNIXタイムスタンプをエクセルで変換するには?

    はじめまして。 UNIXタイムスタンプをエクセルでグレゴリオ暦(一般的な「年/月/日 時:分:秒」)に変換するには どういう式を入れたらよいのでしょうか? 仕事でwebアクセス解析のデータをダウンロードしたものの、 日時がUNIXタイムスタンプで書き出されており、 取引先に提出するのに、グレゴリオ暦に変換する必要があるのです。 http://www.kyucon.com/cgi-bin/time.cgi ↑ここのような、単発で日付を変換してくれるサイトもありますが、 膨大な量のデータのため、式で変換したいのです。 ご存知の方、教えていただけませんでしょうか? 宜しくお願い致します。

  • scriptコマンドでログファイル viewだと文字化け^M

    Fedora Core4でscriptコマンドで 作業ログとして取得した後にviewコマンドでログを確認すると 改行位置に ^M の文字があり、 catコマンドではプロンプトの位置がずれてしまいます。 下記作業内容になります [unix@local ~]$ script hoge スクリプトを開始しました、ファイルは hoge です [unix@local ~]$ hostname local.com [unix@local ~]$ date 2007年 7月 20日 金曜日 23:48:35 JST [unix@local ~]$ exit スクリプトを終了しました、ファイルは hoge です [unix@local ~]$ cat hoge スクリプトは 2007年07月20日 23時48分27秒 に開始しました[unix@local ~]$ hostname local.com [unix@local ~]$ date 2007年 7月 20日 金曜日 23:48:35 JST [unix@local ~]$ exit スクリプトは 2007年07月20日 23時48分37秒 に終了しました[unix@local ~]$ [unix@local ~]$ view hoge スクリプトは 2007年07月20日 23時48分27秒 に開始しました[unix@local ~]$ hostname^M local.com^M [unix@local ~]$ date^M 2007年 7月 20日 金曜日 23:48:35 JST^M [unix@local ~]$ exit^M スクリプトは 2007年07月20日 23時48分37秒 に終了しました 以上、お手数お掛けいたしますが ご教授よろしくお願い致します。

  • accessクロス集計で前月21日~今月20日集計は

    説明がうまくできないかもしれません。 やりたいことは、accessクロス集計で、月別の集計部分はウイザードで作成されるのは1日~末日ですが、これを、前月21日~今月20日のような「締め日」ライクに変更して集計することはできるものでしょうか。 《集計結果イメージ》 氏名,1月,2月,3月 山田,150,160,155 田中,150,160,165 佐藤,130,160,165 #1月は12月21日~1月20日分を集計するように下記を修正したい。 TRANSFORM Sum([売上]) AS 値 SELECT [氏名], Sum([売上]) AS [集計値: 売上] FROM 弁当注文 GROUP BY [氏名] PIVOT Format([年月日],"oooo") IN ("1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月");

  • 入力された年月からその月の末日を取得する

    import java.util.*; class Sample { public static void main(String[] args) { System.out.println(args[0]); Calendar cal = Calendar.getInstance(); cal.set(2000,1,1); int y = cal.get(Calendar.YEAR); int m = cal.get(Calendar.MONTH) + 1; int last = cal.getActualMaximum(Calendar.DATE); System.out.print(y + "年" + m + "月の末日は "); System.out.println(last + "日です"); } } で、2000年2月の末日を取得することが出来るのはわかったのですが プログラム上で年月の入力を促してその月の末日を取得するにはどうすればいいのでしょうか? (プログラム実行例) C:\JAVA\SAMPLE>java Sample 2009 2 2009年2月の末日は 28です ↑のようにプログラム上で年 月を入力して実行し、末日を取得したいのですが・・・ 多分この場合、入力数値などに対する例外処理や閏年の処理などもやらないとダメだと思いますがよくわかりません

    • ベストアンサー
    • Java
  • 掲載日と更新日の管理の仕方

    phpmyadminを使ってmysqlのデータを更新しています。 掲載日:2008年5月25日 更新日:2012年6月04日 というようにphpで表示し、掲載順、更新順といったソートをしたいと思っています。 phpmyadminで作ったテーブルは CREATE TABLE IF NOT EXISTS `data_data` ( `id` int(11) NOT NULL, `name` char(10) NOT NULL, `modified_date` date NOT NULL, `create_date` date NOT NULL, PRIMARY KEY (`id`), KEY `modified_date` (`modified_date`,`create_date`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `data_data` (`id`, `name`, `modified_date`, `create_date`) VALUES (1, '23434', '2012-06-04', '2012-04-02'), (2, '464645', '2012-06-03', '2012-03-04'), (3, '940968', '2012-06-03', '2011-03-23'), ・・・ (15000, '940968', '2012-06-03', '2011-03-23'); のようになっています。 SELECT * from data_data ORDER BY modified_date DESC LIMIT 0,50; phpでこの構文で取得します。 ・更新日を手作業で指定し直さないといけない。 ・掲載日より前の日付で更新日を入ることができて、おかしくなってしまう。 といったことになってしまいます。 phpmyadminを使っている限り仕方がないのでしょうか。 たとえば、一流なサイトはどうやって掲載日・更新日を管理しているのしょうか。

    • ベストアンサー
    • PHP
  • 売上計上日

    注文家具の様な、契約してから納品が後日の商品について 仮に令和4年12月25日注文(契約) 令和5年1月10日納品の場合 ■売上は令和5年1月10日で計上でしょうか? もう一つ質問なのですが 12月25日に支払いをした場合と 納品時に支払いをする場合はどうなりますでしょうか? 宜しくお願いいたします。