MySQL@currant的等价物是什么:=@currank+;MS SQL中的1?

MySQL@currant的等价物是什么:=@currank+;MS SQL中的1?,mysql,sql,sql-server,Mysql,Sql,Sql Server,这是我尝试将以下脚本转换为MS SQL脚本的主要MySQL脚本。我不知道是什么意思 SELECT (SELECT COALESCE(transaction_price, 0) FROM (SELECT COALESCE(transaction_price, 0) AS TRANSACTION_PRICE, COALESCE(actual_size,

这是我尝试将以下脚本转换为MS SQL脚本的主要MySQL脚本。我不知道是什么意思

SELECT 
        (SELECT 
                COALESCE(transaction_price, 0)
            FROM
                (SELECT 
                    COALESCE(transaction_price, 0) AS TRANSACTION_PRICE, COALESCE(actual_size, 0) AS ACTUAL_SIZE, @currank = @currank + 1 AS rank
                FROM
                    dw_property_detail p, (SELECT @currank:=0) r
                WHERE
                    land_id = 2 AND transaction_price IS NOT NULL AND flat_type = 'Studio'
                ORDER BY transaction_price DESC) x
            WHERE
                x.rank = 1) AS TRAN_S, 
        (SELECT 
                COALESCE(per_ft_s, 0)
            FROM
                (SELECT 
                    COALESCE(transaction_price / actual_size, 0) AS PER_FT_S, @currank:=@currank + 1 AS rank
                FROM
                    dw_property_detail p, (SELECT @currank:=0) r
                WHERE
                    land_id = 2 AND transaction_price IS NOT NULL AND flat_type = 'Studio'
                ORDER BY COALESCE(transaction_price / actual_size, 0) DESC) x
            WHERE
                x.rank = 1) AS PER_FT_S
什么是
@currank:=@currank+1
选择@currank:=0
的等价物

行号(窗口/分析功能-MySQL目前不支持的功能)

将其作为附加列添加到SELECT子句中。
为此,您现在不需要查询的ORDER BY(但如果您想要有序的结果,请保留它)



这个查询应该做什么?您可以分享一些示例数据和查询产生的结果吗?好的,我将更新MySQL查询。请看,我迷路了,你能帮我拿一下吗。我不明白p检查添加链接底部的示例你能简化我的脚本吗?哦,它只返回2列交易和每英尺,但你的返回是3列交易价格、实际价格,rankIt只是子查询部分,而不是整个查询
row_number() over (order by transaction_price desc)
SELECT      COALESCE(transaction_price, 0)                          AS TRANSACTION_PRICE
           ,COALESCE(actual_size, 0)                                AS ACTUAL_SIZE
           ,row_number () over (order by transaction_price DESC)    AS rank

FROM        dw_property_detail p

WHERE       land_id     = 2 
        AND flat_type   = 'Studio'
        AND transaction_price IS NOT NULL 

ORDER BY    transaction_price DESC