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

MySQL:Разделете списъка, разделен със запетая, на няколко реда

В MySQL това може да се постигне, както следва

SELECT id, length FROM vehicles WHERE id IN ( 117, 148, 126) 

+---------------+
| id  | length  |
+---------------+
| 117 | 25      |
| 126 | 8       |
| 148 | 10      |
+---------------+

SELECT id,vehicle_ids FROM load_plan_configs WHERE load_plan_configs.id =42

+---------------------+
| id  | vehicle_ids   |
+---------------------+
| 42  | 117, 148, 126 |
+---------------------+

Сега, за да получите дължината на разделените със запетая vehicle_ids, използвайте по-долу заявка

Output

SELECT length 
FROM   vehicles, load_plan_configs   
WHERE  load_plan_configs.id = 42 AND FIND_IN_SET(
       vehicles.id, load_plan_configs.vehicle_ids
)

+---------+
| length  |
+---------+
| 25      |
| 8       |
| 10      |
+---------+

За повече информация посетете http://amitbrothers .blogspot.in/2014/03/mysql-split-comma-separated-list-into.html



  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 RAND() Функция – Генериране на произволно число в MySQL

  2. Достатъчен ли е mysqli_real_escape_string, за да се избегне SQL инжекция или други SQL атаки?

  3. Заявката за MySQL Insert не работи с клауза WHERE

  4. ADDTIME() Примери – MySQL

  5. Кога да използвате STRAIGHT_JOIN с MySQL