MYSQL中关于字符串的截取解决办法
MYSQL中关于字符串的截取
我的mysql版本是5.5.21,a1表中a2列是字符串形式,然后查询的时候我想把它全部转换成数字形式,例如:
然后我想将a2列全部转换为数字,就是如下形式:
mysql> select * from a1;
+----+------+
| a1 | a2 |
+----+------+
| 1 | 1203 |
| 2 | 2002 |
| 3 | 0000 |
| 4 | 0000 |
| 5 | 1104 |
| 6 | 0000 |
+----+------+
6 rows in set (0.00 sec)
请问这个应该怎样实现??
------解决方案--------------------
| 3 | Au(T+5) | 为什么不是 5 而是 0000 ?
| 4 | Ag99.9 | 为什么结果是 0000 ?
楼主需要先描述清楚逻辑。
我的mysql版本是5.5.21,a1表中a2列是字符串形式,然后查询的时候我想把它全部转换成数字形式,例如:
- SQL code
DROP TABLE IF EXISTS a1; -- 创建a表 CREATE TABLE a1 (a1 INT NOT NULL AUTO_INCREMENT, a2 VARCHAR(50), CONSTRAINT PRIMARY KEY(a1) ); -- 插入a表数据 INSERT INTO a1 (a2) VALUES ('SB1203'); INSERT INTO a1 (a2) VALUES ('A2002'); INSERT INTO a1 (a2) VALUES ('Au(T+5)'); INSERT INTO a1 (a2) VALUES ('Ag99.9'); INSERT INTO a1 (a2) VALUES ('FS21104'); INSERT INTO a1 (a2) VALUES ('BRBW'); mysql> select * from a1; +----+---------+ | a1 | a2 | +----+---------+ | 1 | SB1203 | | 2 | A2002 | | 3 | Au(T+5) | | 4 | Ag99.9 | | 5 | FS21104 | | 6 | BRBW | +----+---------+ 6 rows in set (0.00 sec)
然后我想将a2列全部转换为数字,就是如下形式:
mysql> select * from a1;
+----+------+
| a1 | a2 |
+----+------+
| 1 | 1203 |
| 2 | 2002 |
| 3 | 0000 |
| 4 | 0000 |
| 5 | 1104 |
| 6 | 0000 |
+----+------+
6 rows in set (0.00 sec)
请问这个应该怎样实现??
------解决方案--------------------
| 3 | Au(T+5) | 为什么不是 5 而是 0000 ?
| 4 | Ag99.9 | 为什么结果是 0000 ?
楼主需要先描述清楚逻辑。