OracleのことならCONFRAGEへ!
Contact
トップページ
>
Oracle SQL
> 数値の1='1'は等しい
初版
2006/04/12:
最終更新日
2006/08/13
数値の1='1'は等しい
目次
・
数値の1='1'は等しい
数値の1='1'は等しい
SQLではシングルクォーテーションで囲んだ文字列は文字型になります。
シングルクォーテーションで囲んでない数値は数値型となります。
しかし、以下のSQLのようにwhere句で
1 = '1'
とすると、真であることが分かります。
select sysdate from dual where 1 = '1';
このようなSQLを実行した場合、結果は以下のようになります。
sysdate -------- 06-02-04
これは、親切にも
暗黙型変換
を行っているから等しいという結果が返ってくるのです。とっても便利です。
但し、これはパフォーマンスが落ちるので本来は型を合わせるべきです。
HOME