Cannabis sativa can grow in any type of soil, even when nutrition is poor.  Although it can grow in nutrient poor soil, the plant will do much better in a specific type of soil.  Carbon, hydrogen, and oxygen, are nutrients absorbed by the plant from air and water.  Other elements including nitrogen, phosphorous, and potassium are called primary mineral nutrients.  These are elements that the plant uses the most.  Secondary nutrients include calcium and magnesium, which are used in smaller amounts than the primary nutrients.  Lastly, the trace elements used by Cannabis include, iron, sulfur, manganese, boron, molybdenum, zinc, and copper.  Other minute nutrients used in plant nutrient mixes include aluminum, chlorine, cobalt, iodine, selenium, silicon, sodium, and vanadium.  With the right combination of these nutrients you can grow the perfect cannabis plant.