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

Mysql Query to Separate String, разделен с интервал, Преобразуване в 2 колони

ето запитване, което отговаря на вашите изисквания. Имайте предвид, че всъщност не избира никакви редове от таблицата COLUMNS, това е необходимо, тъй като MySQL няма наличен генератор на редове, всяка таблица може да отиде тук, но трябва да има повече редове, отколкото заявката по-долу трябва да върне, в противен случай ще действа като команда LIMIT.

SET @VInput := '24 4 36 2 63 5 56 7';
SET @VRow := 0;

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(@VInput, ' ', (@VRow := @VRow + 1) * 2 - 1), ' ', -1), SUBSTRING_INDEX(SUBSTRING_INDEX(@VInput, ' ', (@VRow) * 2), ' ', -1) FROM INFORMATION_SCHEMA.`COLUMNS` WHERE @VRow * 2 < CHAR_LENGTH(@VInput) - CHAR_LENGTH(REPLACE(@VInput, ' ', ''));

Уведомете ме, ако имате въпроси,

Поздрави,

Джеймс




  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:Намерете редове, където разликата в времевия печат е по-малка от x

  2. Качете изображение от iOS с помощта на ASIHTTPRequest

  3. грешка при автоматично увеличаване на mysql

  4. Как да вмъкнете в MySQL с помощта на подготвен оператор с PHP

  5. onbeforeprint() и onafterprint() еквивалентни за браузъри извън IE