Home >Database >Mysql Tutorial >Why Does My SQL Query Return 'Column 'Mary' Does Not Exist'?

Why Does My SQL Query Return 'Column 'Mary' Does Not Exist'?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-01 02:56:13444browse

Why Does My SQL Query Return

"Column 'Mary' Does Not Exist": Understanding the Quote Conundrum

When executing the following SQL query, you might encounter an error indicating that the column 'Mary' does not exist:

SELECT telephone.telephonenumber AS tel
FROM person, telephone
WHERE person.idperson = telephone.idperson
AND person.personname = ‘Mary’;

Confusingly, you are not referencing 'Mary' as a column name but rather as a value to compare against. The source of this error lies in the use of smart quotes, (‘Mary’), instead of plain single quotes, ('Mary'), to delimit the string literal.

In SQL, smart quotes are often used to enclose column names or table names, as they prevent ambiguity in cases where identifiers might clash with reserved words. However, when it comes to string literals, such as the value you want to compare against personname, it is essential to use plain single quotes.

By replacing the smart quotes with plain single quotes, the query should execute successfully, returning the correct telephone number for the person with the name 'Mary'. Here is the corrected query:

SELECT telephone.telephonenumber AS tel
FROM person, telephone
WHERE person.idperson = telephone.idperson
AND person.personname = 'Mary';

Remember, it is crucial to use plain single quotes for string literals in SQL to avoid errors and ensure that your queries operate as intended.

The above is the detailed content of Why Does My SQL Query Return 'Column 'Mary' Does Not Exist'?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn