Mysql
 sql >> база данни >  >> RDS >> Mysql

Може ли Mysql да раздели колона?

Изглежда, че работи:

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)

означава 1-ва стойност, 2-ра, 3-та и т.н.

Обяснение:

Вътрешният substring_index връща първите n стойности, които са разделени със запетая. Така че, ако оригиналният ви низ е "34,7,23,89", substring_index( context,',', 3) връща "34,7,23".
Външният substring_index приема стойността, върната от вътрешния substring_index и -1 ви позволява да вземете последната стойност. Така че получавате "23" от "34,7,23".
Вместо -1 ако посочите -2 , ще получите "7,23", защото взе последните две стойности.

Пример:

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

Тук prices е името на колона в MyTable .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Основни команди за администриране на база данни на MySQL – част I

  2. Как да използвам неподписани int/long типове с Entity Framework?

  3. Как да се присъедините към MySQL и Postgres в материализиран изглед на живо

  4. Как да четете и нулирате AUTO_INCREMENT в MySQL

  5. актуализиране на колони с пореден номер mysql