在oracle中选择不同列的第一个字母

时间:2012-06-20 10:46:14

标签: oracle10g oracle-xe

我想要一个返回字符和数字

组合的查询

示例:

表名 - emp
需要的列 - fname,lname,code

如果fname = abc和lname = pqr并且该行是表的第一行,那么结果应为code = ap001。

对于下一行,它应该是这样的:

Fname = efg,lname = rst
代码= er002等。

我知道我们可以使用substr来检索colume的第一个字母,但我不知道如何使用它来处理两列以及如何连接。

1 个答案:

答案 0 :(得分:1)

行。您知道可以使用substr功能。现在,要连接,您将需要一个连接运算符||。要获取查询检索的行数,需要rownum伪列。也许您还需要使用to_char函数来格式化数字。关于您可以在SQL reference中阅读的所有功能和操作员。无论如何,我认为你需要这样的东西(我没有检查):

select substr(fname, 1, 1) || substr(lname, 1, 1) || to_char(rownum, 'fm009') code
from emp