以下のSQL文を見て下さい。
select *
from テーブル名
where 1 = '1';
このSQL文はwhere句で、数値型と文字列型を指定していますので、一見、レコードはヒットしないように思いますが、実は1='1'は真になります。(よってこのSQLは単なる全件検索です。)
このSQLで1='1'が真になるのは、暗黙型変換というのをおこなってくれているからです。
そのため、SQLのパフォーマンスが下がってしまいます。
ですので、便利なのですが暗黙型変換はパフォーマンスチューニングの観点からいうと使用してはいけません。