I have two tables as below:
users
-id (primary key, AUTO_INCREMENT)
-username (varchar)
-password (varchar)
users_messages
-id (primary key, AUTO_INCREMENT)
-message (text)
-fk sender_id (int)
-fk receiver_id(int)
-sent_date(datetime)
-is_read(tinyint)
Both foreign keys in users_messages references same table i.e users
I want to write a sql query to get output as below:
Message Sender Receiver
Message 1 testing john sonam
Message 2 testing meena shenaz
How can i do this? I need to fetch all the messages from users_messages table with sender_id and receiver_id replaced by username column in users table
Edit
Solution:
SELECT m.id, m.message, s.username, r.username FROM users_messages m
INNER JOIN users s ON m.sender_id = s.id
INNER JOIN users r ON m.receiver_id = r.id
Try