To make full use of the system, however, one should read through the complete description of the system's features.
Level 1
Records are selected from the database if they "match" the criteria you enter. You enter the criteria you desire in the text-boxes next to the appropriate field-names (e.g. Child's Surname). If you enter no criteria into a particular box, then the associated field is not used in the selection. It is important to note that all the criteria statements you enter must be satisfied by a record for it to be selected.
For many queries, you can just enter the "value" (e.g. a surname) you wish to have matched into the appropriate text-box. For example, if you are seeking the records where the father was Jean Samson and the mother's surname was Boudreau, then
Actually, you may get a few more records than you were intending. In this simple mode, the "matches" need only be partial. For example, for the Father's Given Name(s) to "match" your criteria Jean, it need only contain "Jean" somewhere in the field. Thus, you may also pick up "Jean Paul", "Simon Jean", etc. Please note, however, that all matching is case-sensitive, so capitals count.
You can use this behavior to your advantage. If you want to pick up the common variant "Sampson" as well as "Samson", you could enter just Sam into the Father's Surname text-box. This will pick up Samson, Sampson - as well as possibly others, such as Samuelson, etc. But you can always ignore the extraneous selections.
Note that you ordinarily need not enclose a value within double-quotes. This is onlt necessay if the value contains an embeded space or some non-alphabetic character. Thus, the Given Name(s) criteria of "Jean Paul" requires the double quotes, as does the date "1850-07-01".
Level 2
DBQuery's OR reserved word significantly expands the range of criteria one can formulate. You can use OR to connect a set of indididual values. For example,
This OR connector works exactly as one should expect: the criteria is considered to be "matched" if either of the values it connects are matches.
If you use reserved word OR, please be sure that there is at least one space to each side of it. This is true for all of DBQuery's other "reserved words".
Level 3
The use of the DBQuery connector AND, along with the set of comparison operators ( >, >=, <, <= ), allows the specification of addition types of criteria; e.g. date-ranges.
For example, if you wish to have only records with Birth Dates after 1850-07-01, you would add the following to your other criteria:
Similarly, restricting selections to the date-range to after 1850-07-01 and up to 1860-07-01 (inclusive) would be written:
In the above examples, please note that the dates had to be enclosed in double-quotes because of the non-alphabetic character " - " that they include. Also note the the reserved words (> and <= in the example) were carefully separated from the adjacent elements by at least one blank space.
As you might have guessed, there is no reason why the use of these reserved words has to be restricted to just date fields. The comparision operations actually do their comparisons based on alphabetic ordering from the left and so can be applied to any field.
The AND connector can also be used anywhere that an OR connector might be used, but of course with a different meaning. In the case of the AND connector, the criteria is considered to be "matched" only if both of the values it connects are matches.
Care should be taken to avoid ambiguity if both AND and OR connectors are used in the same statement. You can use parentheses to group the expressions in the way that is intended. An example should make this clear:
The wedGED DBQuery language, however, has additional features that can add considerable precision to the criteria and make the selection process more efficient. Among these advanced features are the ability to make specified matches case-insensitive, to merge the responses of multiple queries with duplicate records removed, etc.
Individually. these additional capabilities are not very difficult to learn. It does take some study, however, to understand the rules governing the possible interactions among them.
For now, you may at least wish to glance at a description of the full language to get a sense of these additional capabilities and the rules governing their interactions.