There is a request that displays all orders. There are 6 divisions in the teh_otdel table, and now they are all output.
I am trying to remake the request so that in one case all orders related to these 5 departments are displayed, and in the other with only one department. But something is not coming out yet.
It feels like something small, but the project has already gotten the head off. Can someone tell me what and how to change. I will be very grateful if you guide on the right path.
SELECT zkz_adr_inf.id, zkz_adr_inf.date, zkz_adr_inf.time, zkz_adr_inf.metro, zkz_adr_inf.sot_phone, zkz_adr_inf.home_phone, zkz_adr_inf.work_phone, zkz_adr_inf.other_phone, zkz_adr_inf.ulica, teh_otdel.txt_otd, zkz_tehnika.otdel, zkz_tehnika.model, user_info.f, user_info.i, ing_so, teh_made.txt_made, zkz_ispoln.status, zkz_ispoln.etap, zkz_ispoln.date_prisv, zkz_ispoln.viez_ing, zkz_ispoln.kur_in, zkz_ispoln.ochered, zkz_ispoln.menedg, zkz_adr_inf.data_in, zkz_adr_inf.time_in, zkz_adr_inf.st, text.txt as metro, zkz_otmetki.last FROM zkz_adr_inf LEFT JOIN zkz_ispoln ON zkz_adr_inf.id = zkz_ispoln.id LEFT JOIN user_info ON zkz_ispoln.menedg = user_info.id LEFT JOIN zkz_tehnika ON zkz_adr_inf.id = zkz_tehnika.id LEFT JOIN teh_made ON teh_made.id = zkz_tehnika.made LEFT JOIN teh_otdel ON teh_otdel.id = zkz_tehnika.otdel RIGHT JOIN zkz_otmetki ON zkz_otmetki.id = zkz_adr_inf.id LEFT JOIN text ON text.id = zkz_adr_inf.metro WHERE zkz_adr_inf.data_in BETWEEN '2000-01-01' AND '3000-01-01' ORDER BY zkz_adr_inf.id DESC LIMIT 0, 30
WHERE teh_otdel.id = 1 /*1 отдел*/andWHERE teh_otdel.id IN (2,3,4,5,6) /*5 других отделов*/. But a query with so many joins is trash. - Goncharov Alexanderzkz_adr_inf.data_in BETWEEN '2000-01-01' AND '3000-01-01'shta? - Invisionzkz_tehnika.otdel != X(or list all the necessary ones in IN), and when only 1 department iszkz_tehnika.otdel = X- Mike