O uso de acentos graves, aspas duplas e aspas simples ao consultar um banco de dados MySQL pode ser resumido a dois pontos básicos.
- Aspas (simples e duplas) são usadas em torno de strings.
- Os acentos graves são usados em torno de identificadores de tabela e coluna.
Aspas duplas
Usando aspas duplas, aqui estão alguns exemplos de entrada e saída:
SELECT "test", "'test'", "''test''", "te""st";
A saída fica assim:
Colocar aspas simples dentro de aspas duplas cancelará o comportamento esperado das aspas simples na consulta MySQL e, em vez disso, o tratará como parte da string. Isso pode ser visto nas colunas 2 e 3 no exemplo acima.
A inserção de duas aspas duplas no meio da string cancelará uma delas.
Aspas simples
Usando aspas simples, aqui estão alguns exemplos de entrada e saída:
SELECT 'test', '"test"', '""test""', 'te''st';
A saída fica assim:
Conforme mostrado na demonstração acima, aspas simples se comportam da mesma maneira que aspas duplas nesses contextos.
Usando aspas simples e aspas duplas juntas
Muitas vezes, haverá uma contração em uma string ou uma citação direta. Em situações como nos relatórios de pesquisa do NPS ou em outros formulários de feedback do cliente, esse geralmente é o caso. Nesses casos, usando aspas duplas para quebrar uma string de texto que contém uma contração como Eles manterá as aspas simples na string como um apóstrofo.
Neste caso, apresentar uma string com uma contração deve ficar assim:
SELECT "They've found this tutorial to be helpful"
A saída fica assim:
Ou, se você precisar usar aspas duplas para apresentar uma cotação de feedback do cliente na string, poderá usar aspas simples para envolver a string inteira.
SELECT 'They\'ve responded, "We found this tutorial helpful"'
Se você precisar usar aspas simples e aspas duplas em uma string que contém uma contração e uma aspa, você precisará usar a barra invertida ‘’ para cancelar o caractere a seguir. Por exemplo:uma string contendo este ' reconhecerá a barra invertida como uma instrução para cancelar o significado sintático da aspa simples e, em vez disso, a inserirá na string como um apóstrofo.
SELECT 'They\'ve responded, "We found this tutorial helpful"'
Backticks
Backticks são usados no MySQL para selecionar colunas e tabelas de sua fonte MySQL. No exemplo abaixo estamos chamando a tabela intitulada
Album
e a coluna Title
. Usando acentos graves, estamos significando que esses são os nomes das colunas e tabelas. SELECT `Album`.`Title`
FROM `Album` AS `Album`
GROUP BY `Album`.`Title`
ORDER BY `Title` ASC
LIMIT 10;
Os acentos graves para nomes de coluna podem não ser necessários.
SELECT Album.Title
FROM Album AS Album
GROUP BY Album.Title
ORDER BY Title ASC
LIMIT 10;
Ambas as consultas retornarão o mesmo resultado.
Juntando tudo
A consulta a seguir usará tudo o que aprendemos aqui, incluindo aspas duplas, aspas simples e acentos graves.
SELECT 'They\'ve responded, "We found this tutorial helpful"' as `Response`
Retornará: