코딩테스트/SQL 문제풀이

[MySQL/MSSQL] 1667. Fix Names in a Table

지과쌤 2022. 12. 28.
반응형

목차

    문제

    SQL Schema

    Create table If Not Exists Users (user_id int, name varchar(40))
    Truncate table Users
    insert into Users (user_id, name) values ('1', 'aLice')
    insert into Users (user_id, name) values ('2', 'bOB')

    Table: Users

    +----------------+---------+
    | Column Name    | Type    |
    +----------------+---------+
    | user_id        | int     |
    | name           | varchar |
    +----------------+---------+
    user_id is the primary key for this table.
    This table contains the ID and the name of the user. The name consists of only lowercase and uppercase characters.
    

     

    Write an SQL query to fix the names so that only the first character is uppercase and the rest are lowercase.

    Return the result table ordered by user_id.

    The query result format is in the following example.

     

    Example 1:

    Input: 
    Users table:
    +---------+-------+
    | user_id | name  |
    +---------+-------+
    | 1       | aLice |
    | 2       | bOB   |
    +---------+-------+
    Output: 
    +---------+-------+
    | user_id | name  |
    +---------+-------+
    | 1       | Alice |
    | 2       | Bob   |
    +---------+-------+
    
     

    풀이

    --MySql
    
    # Write your MySQL query statement below
    select
         user_id
        ,concat(upper(substr(name, 1, 1)), lower(substr(name, 2))) as name
        from Users
        order by user_id asc
    
    --MSSQL
    
    /* Write your T-SQL query statement below */
    select 
         user_id
        ,concat(upper(substring(name, 1, 1)), lower(substring(name, 2, 40))) as name
        from Users
        order by user_id asc
    반응형

    댓글

    💲 추천 글