0

1つの列にデータ間のコンマが含まれているので、これらの異なるデータを2つの新しい列に表示したいと思います。データの例、列CarAndYear:[Volvo、1995]「Volvo」を「Cars」列に表示し、「1995」年を「Year」列に表示したいと思います。このMySQLの問題について助けていただければ幸いです。

4

2 に答える 2

1
SELECT 
    SUBSTRING_INDEX(TRIM(LEADING '[' FROM `columnname`),',',1) as CARS,
    SUBSTRING_INDEX(TRIM(TRAILING ']' FROM `columnname`),',',-1) as Year 
FROM `tablename`;

mysqlのSUBSTRING_INDEX

mysqlのTRIM

于 2013-03-05T08:03:57.317 に答える
1

常に先頭と末尾の括弧があると仮定します。

SELECT TRIM(SUBSTR(CarAndYear, 2, INSTR(CarAndYear, ',') - 2)) Cars, 
       TRIM(SUBSTR(CarAndYear, INSTR(CarAndYear, ',') + 1, LENGTH(CarAndYear) - INSTR(CarAndYear, ',') -1)) `Year`
FROM (SELECT '[Volvo, 1995]' CarAndYear) n

出力

+-------+-------+
| Cars  | Year  |
+-------+-------+
| Volvo |  1995 |
+-------+-------+
于 2013-03-05T08:08:09.943 に答える