gpt4 book ai didi

sql-server-2005 - 在查询中两次使用相同的函数 (SQL Server)

转载 作者:行者123 更新时间:2023-12-04 14:07:17 25 4
gpt4 key购买 nike

在 SQL Server 2005 中,当我编写一个查询时

SELECT m.*, a.price p1, b.price p2
FROM mytable m
LEFT JOIN products_table_1 a
ON my_hash_function(m.name) = a.hash
LEFT JOIN products_table_2 b
ON my_hash_function(m.name) = b.hash

my_hash_function(m.name)计算两次还是只计算一次?如果两次,我如何使用变量来避免这种情况?

最佳答案

select  mm.*, a.price p1, b.price p2 from   
(SELECT m.*, my_hash_function(m.name) as name
FROM mytable m) mm
LEFT JOIN products_table_1 a
ON mm.name = a.hash
LEFT JOIN products_table_2 b
ON mm.name = b.hash

关于sql-server-2005 - 在查询中两次使用相同的函数 (SQL Server),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2161236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com