我列Name
和Sal
,我应该创造Name
一个字符串,然后把*基于工资(1000 $ = *),因此,例如加“*”基于工资
Clark | 5000$
Smith | 4000$
看起来像:
EMPLOYEES_AND_THEIR_SALARIES
-------------------------------
Clark *****
Smith ****
感谢您的答复。
我列Name
和Sal
,我应该创造Name
一个字符串,然后把*基于工资(1000 $ = *),因此,例如加“*”基于工资
Clark | 5000$
Smith | 4000$
看起来像:
EMPLOYEES_AND_THEIR_SALARIES
-------------------------------
Clark *****
Smith ****
感谢您的答复。
以下将提供你正在寻找的结果:
SELECT NAME, RPAD('*', TRUNC(SAL/1000), '*')
FROM YOUR_TABLE
好运。
据我所知,下面的一个应该足够你的需要。
select first_name ||' '|| rpad('**',length(salary),'*') Name from employee;
See Demo;
表数据
SQL> select first_name , salary ,length(salary) from employee;
FIRST_NAME SALARY LENGTH(SALARY)
-------------------- ---------- --------------
Dan 1234 4
Helen 3213 4
Akiko 9000 4
Jackie 40000 5
XING 40000 5
输出:这里*
是按照工资的长度。
SQL> select first_name ||' '|| rpad('**',length(salary),'*') Name
from employee ;
NAME
--------------------------------------------------------------------------------
Dan ****
Helen ****
Akiko ****
Jackie *****
XING *****
CREATE TABLE replicate_example (
Salary INT
)
INSERT INTO dbo.replicate_example
(Salary)
VALUES (3000), (5000)
SELECT CAST(Salary AS NVARCHAR) + ' ' + REPLICATE('*',Salary/1000) FROM dbo.replicate_example
这不是预言。问题标记为Oracle。 – XING
你能告诉至少你努力解决问题了吗?这个网站不是关于*为我编写代码* –
似乎''*的数量取决于您的薪水价值的第一位数字。喜欢5000的5和4000的4.它让我知道这是否正确 – XING