No SQL Server, os identificadores podem ser delimitados usando colchetes, por exemplo.
SELECT [gallons/units] ...
No MySQL, os identificadores podem ser delimitados usando acentos graves, por exemplo.
SELECT `gallons/units` ...
(NOTA:Se MySQL
SQL_MODE
inclui ANSI_QUOTES
, as aspas duplas são tratadas como delimitadores para identificadores, semelhante à forma como o Oracle trata as aspas duplas; sem essa configuração, aspas duplas são tratadas como delimitadores para literais de string. Com ANSI_QUOTES
incluído SQL_MODE
, "gallons/units"
será interpretado como um identificador (nome da coluna). Sem ANSI_QUOTES
, o MySQL o verá como uma string literal, como se estivesse entre aspas simples.) ACOMPANHAMENTO:
Quanto a um erro
"operand should contain only 1 column(s)"
, geralmente é um problema com a semântica da consulta, não um problema com identificadores de escape. Uma subconsulta na lista SELECT pode retornar apenas uma única expressão, por exemplo, isso geraria um erro:
Query: SELECT 'foo' , ( SELECT 'fee' AS fee, 'fi' AS fi )
Error Code: 1241
Operand should contain 1 column(s)