ជាធម្មតា គេប្រើ LIKE ឬ Regular Expression ដើម្បីស្វែងរកទិន្នន័យនៅក្នុង MySQL ។ តែនៅពេលចំនួន Record កាន់តែច្រើន ការស្វែងរក(Search) មានការលំបាក ដូចជា បញ្ហាល្បឿន (Performance) បញ្ហាបង្ហាញទិន្នន័យណាដែលត្រូវជាងគេ ជាដើម ។ដោយសារការជួបបញ្ហា ទាំងនោះ ជាហេតុធ្វើឲ្យ MySQL បង្កើតឡើងនូវលក្ខណៈពិសេសថ្មីមួយហៅថា Full-Text-Search ។
ការកំណត់ Full Text Index នៅក្នុងតារាង (Table) ត្រូវតែដាក់មុនពេលដំណើរការ Full Text Search ។ Full Text Index គឺជាប្រភេទនៃ Index ដែលមានឈ្មោះថា FULLTEXT ។ នៅពេលបង្កើតតារាង (Table) ថ្មីមួយ ដោយប្រើ CREATE TABLE Statement ឬកែប្រែតារាងដោយប្រើ ALTER TABLE Statement អ្នកអាចកំណត់ FULLTEXT សំរាប់កូឡោនណាមួួយ (Column) ។
ឧទាហរណ៍៖ ការកំណត់ FULLTEXT នៅពេលបង្កើតតារាង (Table) ដោយប្រើ CREATE TABLE Statement
CREATE TABLE table_name( column1 data_type, column2 data_type, column3 data_type, … PRIMARY_KEY(key_column), FULLTEXT (column1,column2,..) );
យោងតាម Statement ខាងលើ តារាង (Table) មួយ ត្រូវបានបង្កើតឡើង មានឈ្មោះ users ដែលបានកំណត់ FULLTEXT សំរាប់ address column ។
ប្រសិនបើតារាង(Table) user មិនបានកំណត់ FULLTEXT នៅពេលបង្កើតនោះទេ អ្នកអាចកែប្រែ តារាង ដែលមានស្រាប់នោះបាន ដោយប្រើ ALTER TABLE Statement ។
ALTER TABLE table_name ADD FULLTEXT(column_name1, column_name2,…)
មានមធ្យោបាយម៉្យាងទៀត គឺគ្រាន់តែចូលទៅកាន់ PHP MyAdmin ហើយចុចលើ FullText នៃ Column ដែលចង់កំណត់ FULLTEXT ជាការស្រេច។ ដើម្បពិនិត្យមើលថា តើ address column ដែលបានកំណត់ FULLTEXT មែនអត់ អ្នកអាចចូលមើល ដូចរូបខាងក្រោម៖
បន្ថែមលើសពីនេះទៅទៀត អ្នកអាចកំណត់ FULLTEXT ទៅលើតារាងដែលមានស្រាប់ ដោយប្រើ CREATE INDEX Statement ។
CREATE FULLTEXT INDEX index_name ON table_name(index_column_name,...)
ក្រោយពីកំណត់ FULLTEXT រួច អ្នកក៏អាចលុប FULLTEXT បានដែរ ដោយប្រើ ALTER TABLE ហើយ DROP INDEX Statement ដូចខាងក្រោម៖
FULL TEXT SEARCH ត្រូវបានចែកចេញជា ៣ ប្រភេទ៖
- Natural Language Full Text Search
- Boolean Full Text Search
- Query Expansion Search