FAQ |
Kalender |
![]() |
#1 | |||
|
||||
Medlem
|
Jag har en kolumn som är en VARCHAR(255). Nu vill jag ha ett index så att jag kan hitta alla värden som är NULL. Dvs
SELECT * FROM MYTABLE WHERE MYCOLUMN IS NULL Kan man strunta i att indexera själva texten i MYCOLUMN, och endast indexera huruvida värdet är null eller ej, och på så sätt få ett mindre index? Det jag *inte* vill göra är detta: CREATE INDEX MYINDEX ON MYTABLE (MYCOLUMN) Jag funderar på om det är möjligt att skriva: CREATE INDEX MYINDEX ON MYTABLE (MYCOLUMN(0)) alternativt CREATE INDEX MYINDEX ON MYTABLE (MYCOLUMN(1)) Är det någon som vet? |
|||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Bara ett inlägg till!
|
Tveksamt om det är standardiserat. Sök på "Partial Indexes". Hur som helst bör du ändå kolla upp exakt hur din SQL-databas fungerar. Vilken använder du?
|
|||
![]() |
![]() |
![]() |
#3 | |||
|
||||
Medlem
|
Jag använder MySql.
|
|||
![]() |
![]() |
![]() |
#4 | |||
|
||||
Flitig postare
|
Enligt mysql.com så är det möjligt att göra ett index på en del:
Citat:
Update: Ja det borde gå som du beskrev |
|||
![]() |
![]() |
![]() |
#5 | |||
|
||||
Mycket flitig postare
|
Kan du inte lägga till en extra kolumn i tabellen som talar om ifall att MYCOLUMN är NULL eller inte. Sedan kör du ett index på den extra kolumnen istället för direkt på MYCOLUMN?
|
|||
![]() |
![]() |
Svara |
|
|