Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
9edef9af
Commit
9edef9af
authored
Aug 29, 2000
by
jcole@ham.spaceapes.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed up serg's ft manual.
parent
438e8c7c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
34 additions
and
27 deletions
+34
-27
BitKeeper/etc/logging_ok
BitKeeper/etc/logging_ok
+1
-0
Docs/manual.texi
Docs/manual.texi
+33
-27
No files found.
BitKeeper/etc/logging_ok
View file @
9edef9af
...
...
@@ -15,3 +15,4 @@ tim@work.mysql.com
tonu@work.mysql.com
monty@donna.mysql.com
jcole@tetra.spaceapes.com
jcole@ham.spaceapes.com
Docs/manual.texi
View file @
9edef9af
...
...
@@ -2893,15 +2893,16 @@ distributions.
@end enumerate
One goal with this is that the SQL client library should be free enough
so that it is possible to add @strong{MySQL} support in commercial products
without any license. So in this case we choose the LGPL license.
One goal is that the SQL client library should be free enough that it is
possible to add @strong{MySQL} support into commercial products
without a license. For this reason, we chose the LGPL license for the
client code.
This means that you can use @strong{MySQL} for free with any program that uses
any of the free software licen
c
es. @strong{MySQL} is also free for any end
any of the free software licen
s
es. @strong{MySQL} is also free for any end
user for his own or company usage.
But
if you use @strong{MySQL} for something important to you, you may
However,
if you use @strong{MySQL} for something important to you, you may
want to help secure its development by purchasing licenses or a support
contract, @ref{Support}.
...
...
@@ -2909,7 +2910,7 @@ contract, @ref{Support}.
@subsection Copyright changes
The stable versions of @strong{MySQL} are still using a more strict
license. See the docum
a
tation for that version for more information.
license. See the docum
en
tation for that version for more information.
@node Licensing examples, Cost, Copyright, Licensing and Support
@section Example licensing situations
...
...
@@ -2922,7 +2923,7 @@ license. See the documatation for that version for more information.
This section describes some situations illustrating whether or not you
must license the @strong{MySQL} server. Generally these examples
involve providing @strong{MySQL} as a integrated part of a product.
involve providing @strong{MySQL} as a
n
integrated part of a product.
Note that a single @strong{MySQL} license covers any number of CPUs and
@code{mysqld} servers on a machine! There is no artificial limit on the number
...
...
@@ -2947,7 +2948,7 @@ designed your application around @strong{MySQL}, then you've really made
a commercial product that requires the engine, so you need a license.
If your application does not require @strong{MySQL}, you need not obtain
a license. For example, if
@strong{MySQL} just added
some new optional
a license. For example, if
using @strong{MySQL} just adds
some new optional
features to your product (such as adding logging to a database if
@strong{MySQL} is used rather than logging to a text file), it should
fall within normal use, and a license would not be required.
...
...
@@ -13436,8 +13437,8 @@ For @code{BLOB} and @code{TEXT} columns, you must index a prefix of the
column, you cannot index the entire thing.
In @strong{MySQL} 3.23.23 or later, you can also create special
@strong{
fulltext} indexes. They are used for full-text search. Only
@code{MyISAM} table type supports
fulltext
indexes. They can be created
@strong{
FULLTEXT} indexes. They are used for full-text search. Only the
@code{MyISAM} table type supports
@code{FULLTEXT}
indexes. They can be created
only from @code{VARCHAR}, @code{BLOB}, and @code{TEXT} columns.
Indexing always happens over the entire column, partial indexing is not
supported. See @ref{MySQL full-text search} for details of operation.
...
...
@@ -14164,7 +14165,7 @@ mysql> select STRCMP('text', 'text');
relevance - similarity measure between the text in columns
@code{(col1,col2,...)} and the query @code{expr}. Relevance is a
positive floating point number. Zero relevance means no similarity.
For @code{MATCH ... AGAINST()} to work, a @strong{
fulltext index}
For @code{MATCH ... AGAINST()} to work, a @strong{
FULLTEXT} index
must be created first. @xref{CREATE TABLE, , @code{CREATE TABLE}}.
@code{MATCH ... AGAINST()} is available in @code{MySQL} 3.23.23 or later.
For details and usage examples see @xref{MySQL full-text search}.
...
...
@@ -16422,8 +16423,8 @@ When you use @code{ORDER BY} or @code{GROUP BY} with a @code{TEXT} or
@item
In @strong{MySQL} 3.23.23 or later, you can also create special
@strong{
fulltext} indexes. They are used for full-text search. Only
@code{MyISAM} table type supports
fulltext
indexes. They can be created
@strong{
FULLTEXT} indexes. They are used for full-text search. Only the
@code{MyISAM} table type supports
@code{FULLTEXT}
indexes. They can be created
only from @code{VARCHAR}, @code{BLOB}, and @code{TEXT} columns.
Indexing always happens over the entire column, partial indexing is not
supported. See @ref{MySQL full-text search} for details of operation.
...
...
@@ -19810,9 +19811,10 @@ table type.
For more information about how @strong{MySQL} uses indexes, see
@ref{MySQL indexes, , @strong{MySQL} indexes}.
Fulltext indexes can index only @code{VARCHAR}, @code{BLOB}, and
@code{TEXT} columns, and only in @code{MyISAM} tables. Fulltext indexes
are available from @strong{MySQL} 3.23.23. @ref{MySQL full-text search}.
@code{FULLTEXT} indexes can index only @code{VARCHAR}, @code{BLOB}, and
@code{TEXT} columns, and only in @code{MyISAM} tables. @code{FULLTEXT} indexes
are available in @strong{MySQL} 3.23.23 and later.
@ref{MySQL full-text search}.
@findex DROP INDEX
@node DROP INDEX, Comments, CREATE INDEX, Reference
...
...
@@ -34089,14 +34091,16 @@ DELAYED} threads.
Since version 3.23.23, @strong{MySQL} has support for full-text indexing
and searching. Full-text index in @strong{MySQL} is an
index of type @code{FULLTEXT}.
Fulltext
indexes can be created from
index of type @code{FULLTEXT}.
@code{FULLTEXT}
indexes can be created from
@code{VARCHAR}, @code{TEXT}, and @code{BLOB} columns at
@code{CREATE TABLE} time or added later with @code{ALTER TABLE} or
@code{CREATE INDEX}. Full-text search is performed with @code{MATCH} function.
@code{CREATE INDEX}. Full-text search is performed with the @code{MATCH}
function.
@example
mysql> CREATE TABLE t (a VARCHAR(200), b TEXT, FULLTEXT (a,b));
Query OK, 0 rows affected (0.00 sec)
mysql> INSERT INTO t VALUES
-> ('MySQL has now support', 'for full-text search'),
-> ('Full-text indexes', 'are called collections'),
...
...
@@ -34105,6 +34109,7 @@ mysql> INSERT INTO t VALUES
-> ('Full-text search in MySQL', 'implements vector space model');
Query OK, 5 rows affected (0.00 sec)
Records: 5 Duplicates: 0 Warnings: 0
mysql> SELECT * FROM t WHERE MATCH (a,b) AGAINST ('MySQL');
+---------------------------+-------------------------------+
| a | b |
...
...
@@ -34113,6 +34118,7 @@ mysql> SELECT * FROM t WHERE MATCH (a,b) AGAINST ('MySQL');
| Full-text search in MySQL | implements vector-space-model |
+---------------------------+-------------------------------+
2 rows in set (0.00 sec)
mysql> SELECT *,MATCH a,b AGAINST ('collections support') as x FROM t;
+------------------------------+-------------------------------+--------+
| a | b | x |
...
...
@@ -34126,11 +34132,11 @@ mysql> SELECT *,MATCH a,b AGAINST ('collections support') as x FROM t;
5 rows in set (0.00 sec)
@end example
F
unction @code{MATCH} matches a natural language query @code{AGAINST} a
The f
unction @code{MATCH} matches a natural language query @code{AGAINST} a
text collection (which is simply the columns that are covered
by
fulltext index). For every row in a table it returns relevance -
similarity measure between the text in that row (in the columns, that
are part of the collection) and the query. When it
used in a
by
a @strong{FULLTEXT} index). For every row in a table it returns
relevance - similarity measure between the text in that row (in the columns
that are part of the collection) and the query. When it is
used in a
@code{WHERE} clause (see example above) the rows returned are
automatically sorted with relevance decreasing. Relevance is a non-
negative floating point number. Zero relevance means no similarity.
...
...
@@ -34138,13 +34144,13 @@ Relevance is computed based on number of words in the row and number of
unique words in that row, total number of words in the collection,
number of documents (rows), that contain a particular word, etc.
MySQL uses
very simple parser to split text into words. "W
ord" is
MySQL uses
a very simple parser to split text into words. A "w
ord" is
any sequence of letters, numbers, @code{'}, and @code{_}. Any "word"
that is present in
stopword list or just too short (3 characters or less)
is ignored.
that is present in
the stopword list or just too short (3 characters
or less)
is ignored.
Every correct word in the collection and in the query is weighted,
according to
their
significance in the query or collection. This way, a
according to
its
significance in the query or collection. This way, a
word that is present in many documents will have lower weight (and may
even have a zero weight), because it has lower semantic value in this
particular collection. Otherwise, if the word is rare, it will receive a
...
...
@@ -34152,7 +34158,7 @@ higher weight. Weights of the words are then combined to compute the
relevance.
Such a technique works best with big collections (in fact, it was
carefully tuned up this way). For very small tables word distribution
carefully tuned up this way). For very small tables
,
word distribution
does not reflect adequately their semantical value, and this model
may sometimes produce bizarre results.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment