求一个MySql序列问题 我想让一个字符串的值按序列增加,增加如下:OP-SU-00000001OP-SU-00000002OP-SU-00000003OP-SU-00000004OP-SU-00000005OP-SU-00000006OP-SU-00000007 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 create table test(id int primary key auto_increment,b int)select concat('OP-SU-',right(concat('0000000',id),8))from tb 增加自增字段,用concat('OP-SU-',right(concat('0000000',id),8))解决 那如果要用这个编号做为查询条件的情况下面,还要套一层SQL?我以前用oracle开发的时候,是直接通过一个序列然后在处理下,写进表里?难道MYSQL就一定要用触发器了? MYSQL不是ORACLE,1个自增字段,1个字段(lid)保存你的字符串,在TRIGGER中set new.lid=concat('OP-SU-',right(concat('0000000',new.id),8)) 是的,如果MYSQL什么都与ORACLE一样,你觉得这个世界会怎么样? 使用zerofill特性,蛮好的:mysql> create table test(id int(8) zerofill primary key auto_increment, col2 int);Query OK, 0 rows affected (0.08 sec)mysql> insert into test (col2) values(100);Query OK, 1 row affected (0.00 sec)mysql> select concat('OP-SU-', id), col2 from test;+----------------------+------+| concat('OP-SU-', id) | col2 |+----------------------+------+| OP-SU-00000001 | 100 |+----------------------+------+1 row in set (0.01 sec)mysql> insert into test (col2) values(199);Query OK, 1 row affected (0.00 sec)mysql> select concat('OP-SU-', id), col2 from test;+----------------------+------+| concat('OP-SU-', id) | col2 |+----------------------+------+| OP-SU-00000001 | 100 || OP-SU-00000002 | 199 |+----------------------+------+2 rows in set (0.00 sec)mysql> 求教mysql数据库多维表设计思路 求助连接池问题。 mysql的log问题 我的mysql数据库不能存储像“赟,喆”等的个别汉字,该如何解决? 帮忙解释一下MySQL的数据表类型 ISAM, MyISAM, HEAP, BDB, InnoDB...... 怎样提高mysql的效率? 使用JSP访问MySql,中文字符是乱码问题。 关于商品规格的数据库设计问题? mysql自定义函数查找树,如何设置查询深度? 询问一个mysql数据库 表设计问题 MySQL十大优化技巧 mysql 如何锁表? 让其它进程不能访问表
select concat('OP-SU-',right(concat('0000000',id),8))
from tb
用concat('OP-SU-',right(concat('0000000',id),8))解决
1个自增字段,1个字段(lid)保存你的字符串,在TRIGGER中
set new.lid=concat('OP-SU-',right(concat('0000000',new.id),8))
mysql> create table test(id int(8) zerofill primary key auto_increment, col2 int);
Query OK, 0 rows affected (0.08 sec)mysql> insert into test (col2) values(100);
Query OK, 1 row affected (0.00 sec)mysql> select concat('OP-SU-', id), col2 from test;
+----------------------+------+
| concat('OP-SU-', id) | col2 |
+----------------------+------+
| OP-SU-00000001 | 100 |
+----------------------+------+
1 row in set (0.01 sec)mysql> insert into test (col2) values(199);
Query OK, 1 row affected (0.00 sec)mysql> select concat('OP-SU-', id), col2 from test;
+----------------------+------+
| concat('OP-SU-', id) | col2 |
+----------------------+------+
| OP-SU-00000001 | 100 |
| OP-SU-00000002 | 199 |
+----------------------+------+
2 rows in set (0.00 sec)mysql>