sql >> Databasteknik >  >> RDS >> Mysql

Kan Mysql dela en kolumn?

Det verkar fungera:

substring_index ( substring_index ( context,',',1 ), ',', -1) 
substring_index ( substring_index ( context,',',2 ), ',', -1)
substring_index ( substring_index ( context,',',3 ), ',', -1)
substring_index ( substring_index ( context,',',4 ), ',', -1)

det betyder 1:a värdet, 2:a, 3:a, etc.

Förklaring:

Det inre substring_index returnerar de första n värdena som är kommaseparerade. Så om din ursprungliga sträng är "34,7,23,89", substring_index( context,',', 3) returnerar "34,7,23".
Det yttre substring_index tar värdet som returneras av det inre substring_index och -1 låter dig ta det sista värdet. Så du får "23" från "34,7,23".
Istället för -1 om du anger -2 , får du "7,23", eftersom det tog de två sista värdena.

Exempel:

select * from MyTable where substring_index(substring_index(prices,',',1),',',-1)=3382;

Här, prices är namnet på en kolumn i MyTable .



  1. Amazon RDS för PostgreSQL-alternativ - ClusterControl för PostgreSQL

  2. Hur COT() fungerar i MariaDB

  3. Bring Your Own Cloud (BYOC) vs. Dedicated Hosting på ScaleGrid

  4. Lista alla främmande nycklar på en tabell i SQL Server