新規投稿
フォローする

日付のクエリがうまくいかない

 
query = '日付 <= "'+date+'" and 日付 >= "'+date+'"
 
こちらのクエリではエラー無しで実行されるのに
 
query = 日付 = "'+date+'"'
 
にすると520エラーが返って来ます。
 
レコードの取得を見る限り = が使えると思うのですがうまくいきません。
何を見落としているのでしょうか?
0

6件のコメント

Avatar
江田篤史

tanaka様

お世話になっております.
cstapの江田です.

日付の前にシングルクォートが必要かと思います.

query = '日付 = "'+date+'"'
0
Avatar
tanaka

シングルクォーテーション忘れてました、お恥ずかしいです。

ですがそれとは別の問題みたいです。

 

query = '日付 in ("' + date + '")'

 

こうしたら520なしでうまくいきました。

イコールは使えないんでしょうか

0
Avatar
江田篤史

tanaka様

お世話になっております.

自分の環境で確認しましたが,「フィールドタイプが日付のフィールド」については,「=」が使えて,「in」が使えませんでした.
「フィールドコードが日付のフィールド」のフィールドタイプが,「ドロップダウン」や「ラジオボタン」ということではないでしょうか?

0
Avatar
tanaka

あーなんとなくわかった気がします。

テーブルの中の日付フィールドだからでしょうか。

0
Avatar
江田篤史

tanaka様

なるほど,仰る通りですね.
https://developer.cybozu.io/hc/ja/articles/202331474
こちらの記事のちょうど真ん中辺りに,「テーブル化されたフィールド、関連レコードのフィールドをクエリに含める場合の注意事項」とありました.
テーブル化されたフィールドはすべて,「in」か「not in」を用いるようですね.

勉強になりました.
ありがとうございます.

0
Avatar
tanaka

こちらこそありがとうございました!

0
ログインしてコメントを残してください。