C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: 正規表現でキリ番


(過去ログ 93 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■55766 / inTopicNo.1)  正規表現でキリ番
  
□投稿者/ gonna (70回)-(2010/12/13(Mon) 21:25:52)

分類:[データベース全般] 

SQLを使って9999件のレコードからキリ番(IDの終わりが00なもの)の
検索を行おうと正規表現を使ってとりだそうと思っています。
そこで、SQL文を「SELECT * FROM table WHERE id REGEXP '[0-9][0-9]00';」と書いたのですが、
これではIDが1000番以上の物しか当てはまりません。
どうすればよいのかご教授願います。
因みに「SELECT * FROM table WHERE id REGEXP '[0-9]?[0-9]00';」では
1001とかも引っかかって仕舞ってどうも上手く行かないみたいです。
引用返信 編集キー/
■55767 / inTopicNo.2)  Re[1]: 正規表現でキリ番
□投稿者/ 囚人 (576回)-(2010/12/13(Mon) 21:56:11)
数字しかないんだったら
*00$
とかで良いんじゃないですかね。
引用返信 編集キー/
■55768 / inTopicNo.3)  Re[1]: 正規表現でキリ番
□投稿者/ shu (282回)-(2010/12/13(Mon) 21:58:23)
No55766 (gonna さん) に返信
> SQLを使って9999件のレコードからキリ番(IDの終わりが00なもの)の
> 検索を行おうと正規表現を使ってとりだそうと思っています。
> そこで、SQL文を「SELECT * FROM table WHERE id REGEXP '[0-9][0-9]00';」と書いたのですが、
> これではIDが1000番以上の物しか当てはまりません。
> どうすればよいのかご教授願います。
> 因みに「SELECT * FROM table WHERE id REGEXP '[0-9]?[0-9]00';」では
> 1001とかも引っかかって仕舞ってどうも上手く行かないみたいです。
なんのDBか分かりませんが
id like '%00'
みたいな条件は使えませんか?
引用返信 編集キー/
■55769 / inTopicNo.4)  Re[2]: 正規表現でキリ番
□投稿者/ gonna (71回)-(2010/12/13(Mon) 22:31:02)
ありがとうございます。
[0-9]?[0-9]00$
で無事に出来ました。
今回の環境では'%00'は使えないようです。
解決済み
引用返信 編集キー/
■55772 / inTopicNo.5)  Re[3]: 正規表現でキリ番
□投稿者/ やじゅ (1790回)-(2010/12/13(Mon) 23:22:59)
やじゅ さんの Web サイト
No55769 (gonna さん) に返信

わざわざ正規表現を使わなくても、切り番を求めるなら余り(MOD関数)を使えばよい。
100で割った余りは0になります。
例 MOD(200,100) = 0

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -