[ハッカーランキング]THEPADS
質問リンク
OCCUPATIONSのすべての名前を読み込み、()に各職業の最初のアルファベットを表示します.例)ActorName(A)、DocterName(D)
次の表に従って、各職業の数字(職業名の昇順)を印刷します.
Note: There will be at least two entries in the table for each type of occupation.
TABLE NAME : OCCUPATIONS
columntypeNAMESTRINGOCCUPATIONSTRING
まず必要な機能を見つけました.
1)CONCAT、CONCAT WSでSTRINGを接続する
<->比較:ORACLEは
CONCAT文字列、合計 NULLが含まれている場合、戻り値はnullと無条件です. CONCAT_WS 文字列がリストされ、区切り文字の値を使用して結合されます. NULLに入ると、NULL以外のstr値が戻されます. 2)SUBSTRを使用して職業COLUMの最初のアルファベットを抽出する
3)GROUP BYとORDER BYで並べ替え
4)COUNT関数による職業数字の計算
5)LOWER関数で小文字を返す
6)
コメントリンク
職業名を小文字で表記する条件があったのか...
質問する
OCCUPATIONSのすべての名前を読み込み、()に各職業の最初のアルファベットを表示します.例)ActorName(A)、DocterName(D)
次の表に従って、各職業の数字(職業名の昇順)を印刷します.
There are a total of [occupation_count] [occupation]s.
Note: There will be at least two entries in the table for each type of occupation.
INPUT FORMAT
TABLE NAME : OCCUPATIONS
columntypeNAMESTRINGOCCUPATIONSTRING
SAMPLE INPUT
SAMPLE OUTPUT
Ashely(P)
Christeen(P)
Jane(A)
Jenny(D)
Julia(A)
Ketty(P)
Maria(A)
Meera(S)
Priya(S)
Samantha(D)
There are a total of 2 doctors.
There are a total of 2 singers.
There are a total of 3 actors.
There are a total of 3 professors.
問題を解く
まず必要な機能を見つけました.
1)CONCAT、CONCAT WSでSTRINGを接続する
<->比較:ORACLEは
||
接続STRINGを使用できます.CONCAT
SELECT CONCAT(str1, str2 ...)
SELECT CONCAT_WS(separator, str1, str2 ...)
3)GROUP BYとORDER BYで並べ替え
4)COUNT関数による職業数字の計算
5)LOWER関数で小文字を返す
6)
SET sql_mode = '';
コードでONLY FULL GROUP BYを無効にするコメントリンク
検索
SELECT CONCAT(NAME, '(',SUBSTR(OCCUPATION, 1,1) ,')')
FROM OCCUPATIONS
ORDER BY NAME;
SET sql_mode = '';
SELECT CONCAT('There are a total of ',COUNT(NAME),' ',OCCUPATION,'s.')
FROM OCCUPATIONS
GROUP BY OCCUPATION
ORDER BY COUNT(NAME), OCCUPATION;
このコード状態では、エラーが発生し続け、何か問題があるかを検索し続けます.職業名を小文字で表記する条件があったのか...
SELECT CONCAT(NAME, '(',SUBSTR(OCCUPATION, 1,1) ,')')
FROM OCCUPATIONS
ORDER BY NAME;
SET sql_mode = '';
SELECT CONCAT('There are a total of ',COUNT(NAME),' ',LOWER(OCCUPATION),'s.')
FROM OCCUPATIONS
GROUP BY OCCUPATION
ORDER BY COUNT(NAME), OCCUPATION;
OUTPUTAamina(D)
Ashley(P)
Belvet(P)
Britney(P)
Christeen(S)
Eve(A)
Jane(S)
Jennifer(A)
Jenny(S)
Julia(D)
Ketty(A)
Kristeen(S)
Maria(P)
Meera(P)
Naomi(P)
Priya(D)
Priyanka(P)
Samantha(A)
There are a total of 3 doctors.
There are a total of 4 actors.
There are a total of 4 singers.
There are a total of 7 professors.
正解!ハッカーランキングの中間問題は初めてだ.Reference
この問題について([ハッカーランキング]THEPADS), 我々は、より多くの情報をここで見つけました https://velog.io/@fancypenguin/해커랭크-THE-PADSテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol