1) SQL has the flexibility to join tables on any column(s) using any predicate (=, >, < ). Most of the time the join will use equality between a primary and foreign key. Think of example where joining on something other than keys would be needed. Write the query both as an English sentence and in SQL One example of this would be if a customer is in a city and wants to know what stores there are. If there is a customer table with id, name, and city and then a stores table with id, name, and city, we can use city as the shared attribute since it is. not a primary or foreign key. " Find all customers and the stores that are located in the same city as the customer. " SELECT c.customer_id, c.name AS customer_name, s.store_id, s.store_name FROM customers c JOIN stores s ON c.city = s.city; 2) What is your opinion of SQL as ...