Natural Language Fulltext Search — SQL Technical Interview Questions & Answers
Natural Language Fulltext Search
Natural Language Fulltext Search
- FULLTEXT index lets MATCH (title, body) AGAINST ('exam prep') search words, not LIKE '%exam%'. Needs a FULLTEXT index on those columns (InnoDB in 5.6+).
- Natural language mode is default. BOOLEAN MODE uses +must -mustnot. Query expansion is a follow-up search — mention only if asked.
- Trap: FULLTEXT on InnoDB with tiny tables (minimum token length, stopwords). Trap: MATCH on columns that are not in the index together.
- On the example next to this theory: Natural Language Fulltext Search: create two demo rows, then SELECT qty >= 2 ordered. Say which labels come back.
Technical Interview Tip: MATCH (col) AGAINST ('words') needs a FULLTEXT index.
Code Examples for Natural Language Fulltext Search
Natural Language Fulltext Search — sample query
-- Natural Language Fulltext Search
CREATE TABLE demo (
id INTEGER PRIMARY KEY,
label TEXT NOT NULL,
qty INTEGER DEFAULT 0
);
INSERT INTO demo (id, label, qty) VALUES
(1, 'alpha', 2),
(2, 'beta', 5);
SELECT label, qty FROM demo WHERE qty >= 2 ORDER BY qty DESC;Natural Language Fulltext Search: create two demo rows, then SELECT qty >= 2 ordered. Say which labels come back.
How to Explain Natural Language Fulltext Search to an Interviewer
How do you search words in MySQL?
FULLTEXT index MATCH … AGAINST