Most DBMS deal with crisp querying, in which fuzzy querying conditions described with linguistic terms are not allowed. In these systems, items in query conditions are assumed to carry equal importance, although it might not actually to be the case. There are two ways to deal with fuzzy queries: firstly one can build a fuzzy database or secondly one can extend the query language in existence, such as SQL. Most existing databases are conventional relational database, in which data are precise. So the later is more feasible than the former. In this paper, SQL is extended to deal with some kind of fuzzy queries on the base on fuzzy set theory. Issues for expressing users' preferences to query conditions are also presented here. Relative importance between query items is introduced.Select clause in SQL is extended to express weighted fuzzy queries, such as simple queries, compound queries, sub-queries, multi-table queries, set-oriented queries etc. The mechanism to translate weighted fuzzy queries into regular SQL query is analyzed here, which can take advantage of the existing implementation mechanisms handled by the DBMS. The relation between threshold, weight and matching degree is also discussed. In order to make the querying friendlier, the method to avoid returning null set and corpora is also presented. Projection in weighted fuzzy querying is realized by discarding duplicates according matching degrees.A general fuzzy querying system is designed and realized, which act as an additional interface on the top of Microsoft SQL Server 2000. This system can transform weighted fuzzy queries to regular SQL queries. Users may run fuzzy queries on any table built in SQL Server. This system provide functions as follows: users are permitted to define fuzzy predicates and membership functions for numerical fields; the linguistic hedges can also be defined by users; fuzzy queries, crisp queries or mixed queries can be built; the related weights and threshold can be assigned by users. The records satisfying the queries are output on the descending orders of matching degrees. The design of this system is also suit for other DBMS, such as Oracle, Access, etc.. |