Intermediate LevelLaravel
How do you define Fulltext and Spatial indexes in Laravel Schema migrations?
❓ Interview Prompt: Explain $table->fullText(), $table->spatialIndex(), $table->index(), and optimizing database query performance.
Laravel Schema Builder supports creating advanced database index types to optimize query execution speed:
•
'$table->index(["status", "created_at"])': Creates composite index for multi-column queries.
•
'$table->fullText("body")': Creates FULLTEXT index for natural language text searches.
•
'$table->geometry("location")->spatialIndex()': Creates SPATIAL index for GIS geographic calculations.
Code Implementation Example
php
<?php
use IlluminateDatabaseSchemaBlueprint;
use IlluminateSupportFacadesSchema;
Schema::table('articles', function (Blueprint $table) {
$table->index(['status', 'published_at']);
$table->fullText(['title', 'body']);
});💡Adding composite and fullText indexes in Schema migrations.
🎯 Interview Key Takeaway
Add composite, fullText, and spatial indexes in migrations to optimize database query performance.
#Database Indexes#FullText#Migrations#Intermediate
Back to all Laravel Questions→