18. A computer-implemented method of constructing a query with which to retrieve information from a database, the method comprising: receiving one or more keywords input from a user; determining, by at least one processor of a computer system, a first dataset identified in a schema of the database based on the received one or more keywords and metadata associated with the first dataset; determining, by at least one processor of the computer system, a second dataset identified in the schema of the database based on input from the user and metadata associated with the second dataset; representing graphically, by a display of the computer system, the determined first dataset as a first icon and the determined second dataset as a second icon in a canvas presented to the user; receiving information that the user has graphically associated the first icon with the second icon on the canvas; in response to the user's graphical association of the first and second icons, generating a combination dataset of the first and second datasets; representing graphically the combination dataset as a third icon in the canvas and representing graphically in the canvas a relationship between the combination dataset and the first and second datasets; presenting a natural language query to the user, the natural language query including an intuitive description of a query based on the relationship between the combination dataset and the first and second datasets and an experience level of the user, the intuitive description being different for users with different experience levels; receiving a selection of the natural language query from the user; constructing, by at least one processor of the computer system in response to receiving the selection of the natural language query from the user, a machine-readable structured query based on the first dataset, the second dataset, the combination dataset and the relationship between the first dataset, the second dataset, and the combination dataset; and returning data from the database, the returned data corresponding to an execution of the machine-readable structured query against the database.
21. The method of claim 18 , wherein determining a first dataset comprises: presenting to the user a plurality of potential first datasets identified in a schema of the database based on the input keywords, wherein the identified first datasets include data source metadata, field metadata, data value metadata, or data values that correspond to the one or more keywords; and receiving a selection by the user of the first dataset from the plurality of potential first datasets.