sql >> Databasteknik >  >> RDS >> Mysql

Dela upp data i kolumner i mysql

Du kan skriva en anpassad MySQL-funktion som kallas användardefinierad funktion som kan ta emot variabelnamnet och värdet att söka efter och sedan returnera raden eller ID etc. efter behov.

I den funktionen måste du gå igenom alla rader i en skrivskyddad markör och använda SUBSTRING_INDEX() för att få värdena separat och kolla efter matchning.

Låt mig veta om du behöver mer hjälp.

För mer information, titta i MySQL-manualen för strängfunktioner här .

Ett utdrag från en användarkommentar från länken ovan som kan hjälpa dig att skriva funktionen:Detta kommer att dela upp en IP-adress ("a.b.c.d") i 4 respektive oktetter:

SELECT
`ip` , 
SUBSTRING_INDEX( `ip` , '.', 1 ) AS a,
SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', 2 ),'.',-1) AS b, 
SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', -2 ),'.',1) AS c,
SUBSTRING_INDEX( `ip` , '.', -1 ) AS d
FROM log_table



  1. Dynamisk kedjad valruta

  2. Hur ändrar du SQL-isoleringsnivån från Python med MySQLdb?

  3. Använda varchar(MAX) vs TEXT på SQL Server

  4. Hur databaser stöder e-handelsföretag