VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2002/09/04(Wed) 12:43
投稿者とろ
Eメール
URL
タイトルRe^6: VB SQLで アクセステーブルを操作する

> 結合させないと動かないんですか???

A に2レコード以上存在する場合は、
予期しない結果になる可能性があります。

> えと、データが 02/09/04 という形なので、そのあとの between〜
> にあわせて西暦4桁にしたかったのですが、違う方法あるのでしょうか?

恐らく、『 yyyy/mm/dd で指定して下さい』って
私が言ったからこのようにしたと思うのですが、
それは Microsoft のページを見れば分かりますが、
日付リテラルを使った( # で囲った)場合ですよ。

例えば、 Access のクエリで、
(#2001/02/03# < #2005/02/01#) は当然 True となりますが
(  #01/02/03# <   #05/02/01#) は False となってしまいます。
つまり、『 # の中身は年4桁で指定して下さい』という意味であって、
日付リテラルを使わずに、日付型のフィールドを直接記述する場合は、
年2桁とかは関係ありません。

> where format(C.c2, 'yyyy/mm/dd') between '2001/05/01' and '2001/05/31'
where C.c2 between #2001/05/01# and #2001/05/31#
                    ^^^^    と       ^^^^ の部分は4桁にして下さいという意味。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -