Mysql选择查询问题
我使用以下给定查询:Mysql选择查询问题,mysql,sql,mysql-error-1054,Mysql,Sql,Mysql Error 1054,我使用以下给定查询: SELECT o.orders_id, o.customers_name, o.customers_id, o.payment_method, o.google_order_id, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name FROM orders o, orders_status s, customers c WHERE o.customers_
SELECT o.orders_id, o.customers_name, o.customers_id, o.payment_method, o.google_order_id, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.orders_status_name
FROM orders o, orders_status s, customers c
WHERE o.customers_id = c.customers_id
AND o.orders_status = s.orders_status_id
AND c.customers_firstname = Nisha
OR c.customers_lastname = Nisha
OR c.customers_email_address = Nisha
OR c.customers_telephone = Nisha
它给我的错误是:#1054-where子句中的未知列'Nisha'
是吗?有人能帮我解决这个问题吗?看起来你只需要用引号把尼莎括起来:
'Nisha'
...
AND c.customers_firstname = 'Nisha'
OR c.customers_lastname = 'Nisha'
OR c.customers_email_address = 'Nisha'
OR c.customers_telephone = 'Nisha'
此外,尽管与此错误无关,但请注意,您可能应该将的和/或条件分组,其中
条件位于括号中:
WHERE ( o.customers_id = c.customers_id AND
o.orders_status = s.orders_status_id
) AND
(
c.customers_firstname = 'Nisha' OR
c.customers_lastname = 'Nisha' OR
c.customers_email_address = 'Nisha' OR
c.customers_telephone = 'Nisha'
)
看起来您只需要将Nisha括在引号中:“Nisha”
...
AND c.customers_firstname = 'Nisha'
OR c.customers_lastname = 'Nisha'
OR c.customers_email_address = 'Nisha'
OR c.customers_telephone = 'Nisha'
此外,尽管与此错误无关,但请注意,您可能应该将的和/或条件分组,其中
条件位于括号中:
WHERE ( o.customers_id = c.customers_id AND
o.orders_status = s.orders_status_id
) AND
(
c.customers_firstname = 'Nisha' OR
c.customers_lastname = 'Nisha' OR
c.customers_email_address = 'Nisha' OR
c.customers_telephone = 'Nisha'
)