Arnab Chatterjee
Arnab Chatterjee

Reputation: 27

mysql - Unknown Column In Where Clause

Following Sql query throws error

1054 - Unknown column 'registered_user_detail.user_id' in 'where clause'

Query:

SELECT
  `user_feedback`.`user_id`,
  `user_feedback`.`feedback_status`,
  `registered_user_detail`.`user_id`
FROM
  `user_feedback`,
  `registered_user_detail`
WHERE
  `registered_user_detail.user_id` = `user_feedback.user_id` AND `user_feedback.feedback_status` = 1
ORDER BY
  `user_feedback.feedback_id`
DESC

I have both "user_feedback" table and "registered_user_detail" table; also the "user_id" column in both table. Then what's going wrong.

Upvotes: 0

Views: 9007

Answers (2)

Ponni
Ponni

Reputation: 433

You have missed the punctuationmark symbol in where clause,correct use is: (punchmark)tablename(punchmark).(punchmark)columnname(punchmark). Please try with this:

SELECT user_feedback.user_id, user_feedback.feedback_status, registered_user_detail.user_id FROM user_feedback, registered_user_detail WHERE registered_user_detail.user_id = user_feedback.user_id AND user_feedback.feedback_status = 1 ORDER BY user_feedback.feedback_id DESC

Upvotes: 1

Matt
Matt

Reputation: 15071

Use correct JOIN's and consistent back ticks.

SELECT u.user_id, u.feedback_status, r.user_id
FROM user_feedback u
INNER JOIN registered_user_detail r ON u.user_id = r.user_id
WHERE u.feedback_status = 1
ORDER BY u.feedback_id DESC

Upvotes: 0

Related Questions