MYSQL中关于字符串的截取我的mysql版本是5.5.21,a1表中a2列是字符串形式,然后查询的时候我想把它全部转换
MYSQL中关于字符串的截取
我的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 ?
楼主需要先描述清楚逻辑。
