seller: id, age, origin, gender, buyer_age, buyer_origin, buyer_gender buyer: id, age, origin, seller_age, seller_origin, seller_gender
Здесь мы хотим предложить покупателю купить у этого продавца
А ТАКЖЕ
предложить продавцу продать вещи покупателю
с кроной.
Выполнение этого запроса с одним запросом предпочтительнее, чем продавец foreach. Каков наиболее эффективный способ сделать это? Я не хочу ВЫБРАТЬ каждый из них и получить информацию, а затем изменить запрос и снова SELECT, это процесс убийства в кодировании и использование системной памяти. Если есть возможность использовать join или так с инструкцией ниже, тогда все в порядке.
Если продавец или покупатель говорит, что возраст и происхождение НЕ важны для меня, то как это возможно? Здесь
WHERE seller_origin = ANY
в mysql?
Сначала измените все имена столбцов как у покупателя, так и у продавца, чтобы иметь префикс имени таблицы, в которой они возникли, поскольку мы будем присоединяться к таблицам.
SELECT * FROM seller INNER JOIN buyer ON (seller.buyer_gender = buyer.gender OR seller.buyer_gender IS NULL) AND (buyer.seller_gender = buyer.gender OR buyer.seller_gender IS NULL) AND (seller.buyer_origin = buyer.origin OR seller.buyer_origin IS NULL) AND (buyer.seller_origin = seller.origin OR buyer.seller_origin IS NULL) AND (seller.buyer_age = buyer.age OR seller.buyer_age IS NULL) AND (buyer.seller_age = seller.age OR buyer.seller_age IS NULL)