Na serveru SQL Server lze identifikátory oddělovat pomocí hranatých závorek, např.
SELECT [gallons/units] ...
V MySQL lze identifikátory oddělovat pomocí zpětných značek, např.
SELECT `gallons/units` ...
(POZNÁMKA:Pokud MySQL SQL_MODE
zahrnuje ANSI_QUOTES
, pak jsou dvojité uvozovky považovány za oddělovače identifikátorů, podobně jako Oracle zpracovává dvojité uvozovky; bez tohoto nastavení jsou dvojité uvozovky zpracovány jako oddělovače pro řetězcové literály. S ANSI_QUOTES
zahrnuto SQL_MODE
, "gallons/units"
bude interpretován jako identifikátor (název sloupce). Bez ANSI_QUOTES
, MySQL to uvidí jako řetězcový literál, jako by byl uzavřen v jednoduchých uvozovkách.)
NÁSLEDUJÍCÍ:
Pokud jde o chybu "operand should contain only 1 column(s)"
, to je obvykle problém se sémantikou dotazu, nikoli problém s únikem identifikátorů.
Poddotaz v seznamu SELECT může vrátit pouze jeden výraz, například by to vyvolalo chybu:
Query: SELECT 'foo' , ( SELECT 'fee' AS fee, 'fi' AS fi )
Error Code: 1241
Operand should contain 1 column(s)