2017-10-16 12 views
-3

私は現在、苦労しています。 値(給与)を*(星)に変換しようとしています これは、結果として***を私に与えるべきです。 1000人に1つの*を作成する必要があります。 誰か助けてくれますか?記号を数字で置き換えてください。SQL

編集: 私の現在のソリューション(動作しない)

SELECT SUBSTR(LAST_NAME, 0,8) as h, round(SALARY, -3) FROM EMPLOYEES 

だから私は、すでに1000年に丸められますが、どのように私はスターにそれを変更できますか?

+2

あなたが苦労している場合は、何かをしようとしている必要があります。何をしようとしたのですが、何のエラーがありましたか? –

+0

私の質問を編集しました、ありがとう – Jensoo

答えて

2

は、あなたが何の小数を持っていないし、次にあなたが* X-回繰り返すように、単純にラウンド、その後、1000年に自分の給料を分割

SELECT REPEAT('*', FLOOR(Salary/1000));

のようなものを試してみてください。

EDIT(コメントに応じて):

SELECT SUBSTR(LAST_NAME, 0, 8) AS h, REPEAT('*', FLOOR(Salary/1000)) 
FROM EMPLOYEES 
WHERE SALARY <> 0; 
+0

論理的ですが、どのように実装すればよいですか? 'H、ラウンド(SALARY、-3)からSELECT SUBSTR(LAST_NAME、0,8)を従業員から選択します ここでSALARY <> 0 REGEXP_REPLACE(SALARY、 '*') – Jensoo

関連する問題