首页  >  问答  >  正文

如何在不使用 AS 关键字的情况下重新表述此查询?

我正在完成 HackerRank 挑战,但文档说我不应该使用 AS 关键字:

我需要在 MySQL 中重写此查询,以便它不包含 WITH A AS 中的 AS,也不包含 SELECT...AS test 中的 AS

WITH A AS (
    SELECT DISTINCT
        MAX( LENGTH( customer_id ) ) AS test
    FROM
        orders

    UNION

    SELECT DISTINCT
        MIN( LENGTH( customer_id ) )
    FROM
        orders
)
SELECT
    test,
    LENGTH(test)
FROM
    A

P粉765570115P粉765570115277 天前387

全部回复(1)我来回复

  • P粉497463473

    P粉4974634732024-01-17 14:21:34

    WITH 子句用于声明 VIEW,因此您可以像下面这样重写它

    SELECT
        test,
        LENGTH(test)
    FROM
        (
     SELECT DISTINCT
            MAX( LENGTH( customer_id ) ) AS test
        FROM
            orders
    
        UNION
    
        SELECT DISTINCT
            MIN( LENGTH( customer_id ) )
        FROM
            orders)

    回复
    0
  • 取消回复