но это sql всегда действует
Я не знаю, что это значит. По-видимому, вы имеете в виду, что он не работает правильно, иначе у вас не было бы вопросов.
Как упомянула лошадь, вам вообще не нужно усложнять это функцией. Но, тем не менее, для меня это работает, если имена ваших таблиц не нужно заключать в двойные кавычки. Чтобы избежать этой проблемы, для построения строки следует использовать FORMAT()
, а не ||
.
Если вы получите сообщение об ошибке, какую ошибку вы получите? Если вы думаете, что это молчаливо не действует, что вы сделали, чтобы сделать вывод об отсутствии эффекта?