Tabla SQL con entrada de “lista” vs tabla SQL con una fila para cada entrada

Tengo una tabla Sqlite donde cada fila es la forma de:

 value, "a,b,c,d,e,f,g,h,i,j", value3, value4 

Donde mis consultas buscan un emparejamiento de valor, %b% usando LIKE . ¿Es más eficiente en términos de tiempo de consulta tener una tabla en la que cada fila sea una permutación?

 value, a, value3, value4 ... value, j, value3, value4 

De modo que mis consultas ahora son valiosas, b usando el operador = esta vez.

Como nota, el caso de uso en el que estoy interesado tiene ~ 10,000 filas actualmente donde cada elemento de “lista” tiene un promedio de 8 entradas. Sqlite tanto Sqlite como MySQL porque tengo un problema similar para una MySQL con MySQL y Sqlite .

Donde mis consultas buscan un emparejamiento de valor,% b% usando LIKE. ¿Es más eficiente en términos de tiempo de consulta tener una tabla en la que cada fila sea una permutación?

Definitivamente. Porque las consultas de tipo LIKE ‘% something%’ no pueden usar índices . Entonces las búsquedas van a ser muy lentas. Si eso no es suficiente, estás usando prácticamente un patrón anti RDBMS. más detalles aquí: ¿Es realmente tan malo almacenar una lista delimitada en una columna de base de datos?

una vez que divide su columna ‘CSV’ en columnas separadas, puede llevarlo aún más lejos al normalizar la base de datos.