私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレMySQL 総合 Part14
mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 : ☆
レスフィルター : (試験中)
すみません、途中で送信してしまいました。。
上記のような事をしたい場合、どういうSQL文を書けばよいのでしょうか?
バージョンは4.1.22を使っています。
上記のような事をしたい場合、どういうSQL文を書けばよいのでしょうか?
バージョンは4.1.22を使っています。
MySQL 5 を利用しています。
先月の25日から今月の24日までをselectしたいんですが、どやればいいんでしょうか。。。
いろいろググりましたが、先月の25日の出し方がわからずここに来ました。
どうかよろしくお願い致します。
先月の25日から今月の24日までをselectしたいんですが、どやればいいんでしょうか。。。
いろいろググりましたが、先月の25日の出し方がわからずここに来ました。
どうかよろしくお願い致します。
>>560
SQLでやるべき計算ではないし、第一、処理が意味不明だ。
3月31日までの場合、2月30日からということでいいのか?
日数か週ベースで計算するべきでないか?
とか余計なこと考えちゃったよ。
SQLでやるべき計算ではないし、第一、処理が意味不明だ。
3月31日までの場合、2月30日からということでいいのか?
日数か週ベースで計算するべきでないか?
とか余計なこと考えちゃったよ。
>>561
すいません。説明が足りませんでした。
値 登録日
値1、2008-09-24
値2、2008-09-25 *ヒット
値3、2008-10-01 *ヒット
値4、2008-10-24 *ヒット
値1、2008-10-25
とテーブルから値を引きたいんです。PHP側でやった方がよいでしょうか。。。
すいません。説明が足りませんでした。
値 登録日
値1、2008-09-24
値2、2008-09-25 *ヒット
値3、2008-10-01 *ヒット
値4、2008-10-24 *ヒット
値1、2008-10-25
とテーブルから値を引きたいんです。PHP側でやった方がよいでしょうか。。。
今日の日付 - INTERVAL 1 MONTH でたいていはいけると思うけど、
前の月に対応する日がない場合があるから注意。
以下のような動作になるのでそれで困る場合はさらに考えてくれ。
MONTH 、YEAR_MONTH 、または YEAR を加え、結果の日付が新しい月の最大日数より大きな日を持つ場合、その日は新しい月の最大日数に調整されます。
mysql> SELECT DATE_ADD('1998-01-30', INTERVAL 1 MONTH);
-> '1998-02-28'
前の月に対応する日がない場合があるから注意。
以下のような動作になるのでそれで困る場合はさらに考えてくれ。
MONTH 、YEAR_MONTH 、または YEAR を加え、結果の日付が新しい月の最大日数より大きな日を持つ場合、その日は新しい月の最大日数に調整されます。
mysql> SELECT DATE_ADD('1998-01-30', INTERVAL 1 MONTH);
-> '1998-02-28'
DATE文の質問が続いているけど、
557が言うようにSQLだけで処理するべきじゃないの?
俺はいつもそうしてるんだがw
PHPで処理するとしたら、一度登録データと照合して
それを配列に入れてまた出力…って感じでこっちの方が重そうだが。
557が言うようにSQLだけで処理するべきじゃないの?
俺はいつもそうしてるんだがw
PHPで処理するとしたら、一度登録データと照合して
それを配列に入れてまた出力…って感じでこっちの方が重そうだが。
先月の25日が欲しかったのか。日付取り出して足したり引いたり
してもいいけどdate_format使った方がすっきりするかな。
mysql> select date_format(now() - interval 1 month, '%Y-%m-25');
+---------------------------------------------------+
| date_format(now() - interval 1 month, '%Y-%m-25') |
+---------------------------------------------------+
| 2008-09-25 |
+---------------------------------------------------+
1 row in set (0.00 sec)
してもいいけどdate_format使った方がすっきりするかな。
mysql> select date_format(now() - interval 1 month, '%Y-%m-25');
+---------------------------------------------------+
| date_format(now() - interval 1 month, '%Y-%m-25') |
+---------------------------------------------------+
| 2008-09-25 |
+---------------------------------------------------+
1 row in set (0.00 sec)
○思想的な
MySQLはデータを保管するサーバ。
多数のプロセスやリモートサーバからアクセスされる前提で作られている。
SQLiteはローカルファイルを読み書きするライブラリだと思っておけばよい。
ネットワーク越しのアクセスは想定されていないし、ユーザ管理もできない。
○ライセンス的な
MySQLは有料を含む特殊なライセンスで縛られている。
SQLiteはパブリックドメインなので何をしても良い。
○技術的な
MySQLはセットアップもチューニングも複雑で、バックアップもSQLダンプせにゃならんので使いこなしが大変。
SQLiteは大規模な用途には不向き。メモリが溢れる。でも全OS共通のファイルベースなのでハンドリングが楽。
こんなところか?
MySQLはデータを保管するサーバ。
多数のプロセスやリモートサーバからアクセスされる前提で作られている。
SQLiteはローカルファイルを読み書きするライブラリだと思っておけばよい。
ネットワーク越しのアクセスは想定されていないし、ユーザ管理もできない。
○ライセンス的な
MySQLは有料を含む特殊なライセンスで縛られている。
SQLiteはパブリックドメインなので何をしても良い。
○技術的な
MySQLはセットアップもチューニングも複雑で、バックアップもSQLダンプせにゃならんので使いこなしが大変。
SQLiteは大規模な用途には不向き。メモリが溢れる。でも全OS共通のファイルベースなのでハンドリングが楽。
こんなところか?
おねがいします
サーバのバージョン: 5.1.24-rc-log 他たぶん5.1系列を使っています。OSはFreeBSD6系列と7です。
ibdata1が大きくなってきました。困りました。
いくつかのブログではテーブルごとに分割して
ALTER TABLE tablename TYPE=InnoDB
をせよ、と書いてありました。
公式をみたらdumpしてrestoreしろって書いてあるのですが、どっちをやるべきか
迷っています。
http://dev.mysql.com/doc/refman/5.1/ja/adding-and-removing.html
そこでそれぞれの特徴とか長所短所とか理由とか他のカッコイイ方法などを
教えていただけるととてもうれしいです、教えてください。
ibdata1が大きくなってきました。困りました。
いくつかのブログではテーブルごとに分割して
ALTER TABLE tablename TYPE=InnoDB
をせよ、と書いてありました。
公式をみたらdumpしてrestoreしろって書いてあるのですが、どっちをやるべきか
迷っています。
http://dev.mysql.com/doc/refman/5.1/ja/adding-and-removing.html
そこでそれぞれの特徴とか長所短所とか理由とか他のカッコイイ方法などを
教えていただけるととてもうれしいです、教えてください。
テーブルごとに分割ってinnodb_file_per_tableのこと?
これを仕掛けてalter tableすると、テーブルデータは
別個のibdファイルに入るけど、メインのibdata1はそのままで
小さくならない。
(file_per_tableしてもibdata1は内部処理のために引き続き必要)
dump/restoreは一旦ibdata1が小さくなるが、
そのうちまた大きくなるんじゃない?
だから
(1) dump
(2) innodb_file_per_table設定してibdata1を100MBぐらいで再作成
(3) restore
が一番幸せ
これを仕掛けてalter tableすると、テーブルデータは
別個のibdファイルに入るけど、メインのibdata1はそのままで
小さくならない。
(file_per_tableしてもibdata1は内部処理のために引き続き必要)
dump/restoreは一旦ibdata1が小さくなるが、
そのうちまた大きくなるんじゃない?
だから
(1) dump
(2) innodb_file_per_table設定してibdata1を100MBぐらいで再作成
(3) restore
が一番幸せ
innodb_file_per_table、
うちで評価したときは性能差はまったくなかった。
Heikki(InnoDB作者)が書いた以下の資料が参考になると思う。
http://www.innodb.com/innodbtalkCC2004b.pdf
P13を見ると、特にデメリットはないと書いてある。
There are no clear disadvantages in using multiple tablespaces.
5.1のパーティション機能との相性もよいことだし
(パーティションごとにibdをつくってくれる)、
どんどん使っていいんじゃないだろうか。
うちで評価したときは性能差はまったくなかった。
Heikki(InnoDB作者)が書いた以下の資料が参考になると思う。
http://www.innodb.com/innodbtalkCC2004b.pdf
P13を見ると、特にデメリットはないと書いてある。
There are no clear disadvantages in using multiple tablespaces.
5.1のパーティション機能との相性もよいことだし
(パーティションごとにibdをつくってくれる)、
どんどん使っていいんじゃないだろうか。
登録月から今月まで何ヶ月経過しているか出したいのですが、以下の様にテスト
していますがうまくいきません。(日でなく月の値です)
登録日はdatatime型で入っています。
select date_add('2008-09-07 00:00:00',interval -now() month);
+-------------------------------------------------------+
| date_add('2008-09-07 00:00:00',interval -now() month) |
+-------------------------------------------------------+
| NULL |
+-------------------------------------------------------+
1じゃなくて、ぬるぽかよ。。。orz
どこが悪いのでしょうか?お知恵を拝借させて下さい!
していますがうまくいきません。(日でなく月の値です)
登録日はdatatime型で入っています。
select date_add('2008-09-07 00:00:00',interval -now() month);
+-------------------------------------------------------+
| date_add('2008-09-07 00:00:00',interval -now() month) |
+-------------------------------------------------------+
| NULL |
+-------------------------------------------------------+
1じゃなくて、ぬるぽかよ。。。orz
どこが悪いのでしょうか?お知恵を拝借させて下さい!
なんか根本的にまちがってる気がしてきた。
上のやり方だと、成功したとしても先月の日付はでるけど、1にはならない。。。orz
頭が混乱してきました。。。今夜中に終わるのか。。。
上のやり方だと、成功したとしても先月の日付はでるけど、1にはならない。。。orz
頭が混乱してきました。。。今夜中に終わるのか。。。
自己解決しました!
select month(current_date)-month('2008-09-07 00:00:00');
1
で行けました!ありがとうございました!
select month(current_date)-month('2008-09-07 00:00:00');
1
で行けました!ありがとうございました!
http://www.sanisoft.com/blog/2007/07/18/related-tags-search-by-tags-in-cheesecake-photoblog/
の下のほうのWHERE IN使ってるほうで
ソーシャルブックマークの関連タグ機能を作ってるんですけど
WHERE INのせいなのかサブクエリのせいなのか
すごい遅いんですけど
早くする方法ないですか?
の下のほうのWHERE IN使ってるほうで
ソーシャルブックマークの関連タグ機能を作ってるんですけど
WHERE INのせいなのかサブクエリのせいなのか
すごい遅いんですけど
早くする方法ないですか?
すみません詳しい人教えてください。
MySQL5.1でrawデバイスの上にDB乗せた人はいますか?やっぱり速いですか?
MyISAMよりInnoDBのほうが効果てきめんですか?
http://www.thinkit.co.jp/free/article/0608/1/2/
とか見るとファイルシステムなんてそもそも不要なInnoDBに効果あり一本という気がするのですが。。。
MySQL5.1でrawデバイスの上にDB乗せた人はいますか?やっぱり速いですか?
MyISAMよりInnoDBのほうが効果てきめんですか?
http://www.thinkit.co.jp/free/article/0608/1/2/
とか見るとファイルシステムなんてそもそも不要なInnoDBに効果あり一本という気がするのですが。。。
ケースバイケース。
ただ、Rawdeviceの方は、運用上のデメリットが大きいから、あまり使われないと思うが。
SolarisZFSだと、RawDeviceにしてもパフォーマンス上がるどころか落ちるみたいだし。
ただ、Rawdeviceの方は、運用上のデメリットが大きいから、あまり使われないと思うが。
SolarisZFSだと、RawDeviceにしてもパフォーマンス上がるどころか落ちるみたいだし。
InnoDBをファイルコピーしてんの?
それ、まずくない? バイナリの互換性は保証されてないよ。
それ、まずくない? バイナリの互換性は保証されてないよ。
>>583
>ところで、そのクエリだと登録日が去年の12月とかだと -2 にならない?
(((( ;゚Д゚)))あわわわわ。。。
(root@localhost)[i]>select month(current_date)-month('2007-09-07 00:00:00');
+--------------------------------------------------+
| month(current_date)-month('2007-09-07 00:00:00') |
+--------------------------------------------------+
| 1 |
+--------------------------------------------------+
-2にはならないけど、1になる!年越してない。。。orz
13にしたいんだけど、どすればいいんでしょーか (´・ω・`)
実装前にここ見に来てよかった・゚・(つД`)・゚・
>ところで、そのクエリだと登録日が去年の12月とかだと -2 にならない?
(((( ;゚Д゚)))あわわわわ。。。
(root@localhost)[i]>select month(current_date)-month('2007-09-07 00:00:00');
+--------------------------------------------------+
| month(current_date)-month('2007-09-07 00:00:00') |
+--------------------------------------------------+
| 1 |
+--------------------------------------------------+
-2にはならないけど、1になる!年越してない。。。orz
13にしたいんだけど、どすればいいんでしょーか (´・ω・`)
実装前にここ見に来てよかった・゚・(つД`)・゚・
色々ググって見ました。
http://jp.superuser.co.kr/home/lecture/index.php?cateNo=3&secNo=16&theNo=46&leccode=328
とか見ると5%くらいしか性能違わないみたいですね。
Windowsの例があんまりないのが寂しいが。。。
ああちょっとがっかり。
http://jp.superuser.co.kr/home/lecture/index.php?cateNo=3&secNo=16&theNo=46&leccode=328
とか見ると5%くらいしか性能違わないみたいですね。
Windowsの例があんまりないのが寂しいが。。。
ああちょっとがっかり。
ある特定のカラムに1, 2, 3, ..., nまでをinsertとかupdateするにはどうしたらいいですか?
sqlとストアドプロシージャのどちらに解決方法があるかわかんなくてここで質問・・・、ここ総合だけどいいのかな!
現在プライマリキーを外部のプライマリキーと一致させようとしてまして、
外部キーがnullのところは1から順に採番させようとおもっています。先の方にデータが無いやつでして。
いったんあるカラムにプライマリキーっぽい列をつくって制約を変更させようとしています。
sqlとストアドプロシージャのどちらに解決方法があるかわかんなくてここで質問・・・、ここ総合だけどいいのかな!
現在プライマリキーを外部のプライマリキーと一致させようとしてまして、
外部キーがnullのところは1から順に採番させようとおもっています。先の方にデータが無いやつでして。
いったんあるカラムにプライマリキーっぽい列をつくって制約を変更させようとしています。
解決しました
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
みんなの評価 : ☆類似してるかもしれないスレッド
- MySQL 総合 Part12 (1001) - [94%] - 2008/1/30 17:34 ○
- MySQL 総合 Part13 (996) - [94%] - 2008/6/10 21:02 ☆
- MySQL 総合 Part24 (1010) - [94%] - 2015/2/14 4:46
- MySQL 総合 Part15 (1001) - [94%] - 2009/4/20 12:15 ☆
- MySQL 総合 Part17 (1001) - [94%] - 2010/6/10 20:47 ○
- MySQL 総合 Part18 (986) - [94%] - 2011/1/17 15:46
- MySQL 総合 Part19 (982) - [94%] - 2011/6/9 2:33
- MySQL 総合 Part26 (860) - [89%] - 2023/2/2 9:30
- MySQL 総合 Part20 (995) - [89%] - 2011/10/17 4:48
- MySQL 総合 Part21 (1001) - [89%] - 2011/12/25 22:16
- MySQL 総合 Part22 (1001) - [89%] - 2012/7/10 16:45
- MySQL 総合 Part23 (992) - [89%] - 2013/8/11 17:00
- MySQL 総合 Part25 (947) - [89%] - 2017/6/18 6:30
- MySQL vs PostgreSQL Part2 (941) - [31%] - 2022/5/26 1:30 ○
トップメニューへ / →のくす牧場書庫について