我在下面给定的查询中使用这个:
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 clause' 中的 Unknown column '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
条件的 AND/OR
条件分组在括号中:
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'
)
关于Mysql选择查询问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3118204/