i am very new to SQL, spent hours searching but all the articles point to more or less same
x
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;
Bellow is my code, but honestly not sure what am i doing wrong here.
"SELECT * FROM user_private_store WHERE store_type=@STORE_TYPE " +
"RIGHT JOIN user_private_store_items " +
"ON user_private_store.id = user_private_store_items.id";
I want to join both tables via ID, keep the id from left and take other parameters from right table user_private_store_items
i get Incorrect syntax near the keyword ‘right’
Advertisement
Answer
Just put the where
clause after the joins:
"SELECT * FROM user_private_store s " +
"RIGHT JOIN user_private_store_items i " +
"ON s.id = i.id " +
"WHERE store_type=@STORE_TYPE"
Notes:
table aliases make the query easier to read and understand. I modified you query to use them
you would need to prefix
store_type
in thewhere
clause with the table it belongs to, to avoid ambiguityavoir
select *
; better enumerate all the columns that you want to select