В выражении VARCHAR + INT
, VARCHAR
означает безбожие INT
, а не наоборот.
Этот запрос:
SELECT '12' + 345
вернет 357
, а не '12345'
, а вот этот:
SELECT 'ab' + 1
не вернется, а вернется 'ab1'
Если вы хотите конкатенацию строк, вы должны использовать явное приведение, что вы и делаете.