A subcontract is an agreement between a contractor and a subcontractor. Generally, it's when a contractor hires another construction business to perform specific work - like a specialty trade.
A material contract is a contract between one party and a material supplier. Contractors and subcontractors regularly enter into material contracts with a supplier so that they can obtain the materials they need for the job they're working on.
Purchase orders are sort-of like preliminary material contracts. A purchase order is essentially just an order that's made between someone and a material supplier. Once accepted, a purchase order will generally form a contract - but they're generally a little less formal than your traditional construction contract. You can learn more about them here: Understanding the Construction Purchase Order | Construction Documents.
For more relevant info, I think the resources below will be useful:
- Construction Contracts Overview, FAQs & Resources- Construction Payment and Lien Law Learning Center