Dividir Nombre y Apellido en sqlite

Tengo una tabla en db sqlite llamada [tblbook] con una columna [autores]. Lo que estoy tratando de hacer en el sql es dividir los valores del autor al nombre de pila y el apellido y ordenarlos por apellido. Encontré este gran código:

 SELECT substr(BookAuthor, 1, NULLIF(CHARINDEX(' ', BookAuthor) - 1, -1)) AS [FirstName],
   substr(BookAuthor, CHARINDEX(' ', BookAuthor) + 1, LEN(BookAuthor)) AS [LastName]
 FROM tblBook where _id=3

Funciona perfectamente en MSSQL pero sqlite no tiene la función charindex por lo que falla.

¿Podría alguien ser amable y aconsejarme cuál debe ser el mejor enfoque para lograrlo?

Respuestas a la pregunta(2)

Su respuesta a la pregunta