太头痛了,一个sql语句不会写,大家帮帮忙数据表 table1
有两个字段 a int
b char比如有数据如下
a b
-------------
1 Z
2 Z
30 Z现在我需要一个语句查询出这个结果:
Z001
Z002
Z030
就是说int型的那个需要3位,不足的前面补0,然后连接起来concat只能Z1 Z2 Z30,各位大侠~~~~~~~~~~~~~~~help me
有两个字段 a int
b char比如有数据如下
a b
-------------
1 Z
2 Z
30 Z现在我需要一个语句查询出这个结果:
Z001
Z002
Z030
就是说int型的那个需要3位,不足的前面补0,然后连接起来concat只能Z1 Z2 Z30,各位大侠~~~~~~~~~~~~~~~help me
解决方案 »
- insert 子查询
- 新人 提问 作业 求助
- .Net通过Text方式调用MySQL的存储过程,如何通过程序加入参数(在线等,Up有分)
- 我用的mysql5.0.17 建完表后..只有一个 .frm文件 和一个db.opt文件
- EMSMySQLManager导入,导出问题
- (初级问题,不烦高手)如何在一个表里增加一列???
- PHP中用mysql_query("call abc()")調用存儲過程,可就是調不到???
- mysql不能在存储过程或函数以外用if else等流程控制语句?
- Unable to convert MySQL date/time value to System.DateTime
- mysql某个表中数据自己丢失 求助!
- mysql 索引问题,请大侠帮忙
- MYSQL函数传参问题
create table test(
a int,
b char(1)
);
insert into test values(1,'Z');
insert into test values(2,'Z');
insert into test values(30,'Z');select concat(b,right(concat('000',a),3))
from test
from test
sql-server?
mysql?
db2?
oracle?
create table lk4(a int,b char(1))engine=myisam;
insert into lk4 values(1,'Z'),(2,'Z'),(30,'Z');
select (case when length(a)+length(b) < 4 then concat(b,lpad(a,3,'000')) else concat(b,left(a,3)) end) str from lk4;query result(3 records)
str
Z001
Z002
Z030
看来需要动用存储过程了,,这个看来使用select 的case when 不能解决问了