質問するログイン新規登録

回答編集履歴

1

誤った回答の修正 と 質問内容の追記に対する回答の追記

2015/12/10 04:07

投稿

Archiba
Archiba

スコア27

answer CHANGED
@@ -1,11 +1,29 @@
1
1
  DBは何を使用していますか?
2
2
 
3
+ ---
4
+ // DBへのクエリの段階で、
3
5
 
4
- DBへのクエリの段階で、
5
- 年(今日の日付) - 年(誕生日)
6
+ // 年(今日の日付) - 年(誕生日)
6
7
 
8
+ // *「年(日付)」は、日付から年を抽出する処理
9
+
10
+ > 正確でないため修正
11
+
12
+ MYSQLの場合
13
+
14
+  ```TIMESTAMPDIFF(YEAR, birthday, CURDATE())```
15
+
16
+
7
17
  のようにすれば、常に整数で今日の年齢を取得することができます。
8
- 記述は、DBによって異なります。
9
- DBの種類を教えていただけないと、具体的な内容は回答不能です。
10
18
 
19
+ ---
20
+ > 追記
21
+
11
- *「年(日付)」は、日付から年抽出する処理
22
+ VARCHAR型の birthdayカラム
23
+ JAVAサイドで変換する必要がある場合には、
24
+
25
+ [Java 日付文字列をDate型へ変換](http://chat-messenger.net/blog-entry-45.html)
26
+
27
+ こちらが参考になるかと思います。
28
+ 日付を表す文字列をDateクラスオブジェクトに変換するサンプルが記載されています。
29
+ yyyy-mm-ddについては、最後のサンプルで紹介されています