先日、数年ぶりにSQLを書いたのだけれど、OracleやMSSQLではないSymfowareというRDBMSで少し方言があったらしい。select文でタイムスタンプ型のフィールドに条件をセットするときなのだが、例えばフィールドFieldName(タイムスタンプ型)に対して
2010/12/24 00:00:00
という条件で検索したいときに、
FieldName = timestamp'2010-12-24 00:00:00:00'
とセットしてあげなきゃいけなかった。この timestamp'〜' というのはRDBMSによっていろいろ書き方があるみたい。あと日付のデリミタも / ではなく - じゃないとエラーになるとかこだわりの世界だった。
それと、「textyyyymmdd」というテキストと年月日がくっついたフィールドの年月日部分だけを使って検索したい!というのもselect文で
SUBSTRING ( textyyyymmdd FROM 5 TO 8 ) > YYYYMMDD
みたいにするとtextyyyymmddからyyyymmddだけを抜き出してYYYYMMDDと比べてくれるのだ。こういう機能はFileMakerでは存在しないからちょっとうらやましい感じだったな。
ま、オチは無いがメモってことで。
2010/12/24 00:00:00
という条件で検索したいときに、
FieldName = timestamp'2010-12-24 00:00:00:00'
とセットしてあげなきゃいけなかった。この timestamp'〜' というのはRDBMSによっていろいろ書き方があるみたい。あと日付のデリミタも / ではなく - じゃないとエラーになるとかこだわりの世界だった。
それと、「textyyyymmdd」というテキストと年月日がくっついたフィールドの年月日部分だけを使って検索したい!というのもselect文で
SUBSTRING ( textyyyymmdd FROM 5 TO 8 ) > YYYYMMDD
みたいにするとtextyyyymmddからyyyymmddだけを抜き出してYYYYMMDDと比べてくれるのだ。こういう機能はFileMakerでは存在しないからちょっとうらやましい感じだったな。
ま、オチは無いがメモってことで。