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

Разделен със запетая низ на редове в mysql

Използвайте подзаявка от произволни цифри, за да разделите своя низ. Вместо val можете да използвате '1,2,3'.

SELECT
  DISTINCT SUBSTRING_INDEX(SUBSTRING_INDEX(vals, ',', n.digit+1), ',', -1) val
FROM
  tt1
  INNER JOIN
  (SELECT 0 digit UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3  UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6) n
  ON LENGTH(REPLACE(vals, ',' , '')) <= LENGTH(vals)-n.digit;

Вижте как работи



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Конвертирайте база данни на SQL Server в база данни MYSQL

  2. MySQL ALTER TABLE на много голяма таблица - безопасно ли е да я стартирате?

  3. Rails 3 ActiveRecord:UNION

  4. Преименувайте дублиращи се редове в MySQL

  5. Как да върнете списък с наличните набори от символи в MySQL