MySQL使用变量作为重复值

时间:2018-01-22 15:21:04

标签: mysql

我对MySQL数据库的查询如下:

df.index = df.index.to_period('Q')

if comb.empty:
    comp = df
else:
    comp = comp.join(df,how = 'outer')

有没有办法创建一个变量来避免重复?这必须在不修改数据库的情况下完成,并且在此单次读取期间是优选的。避免必须为每个值计算两次MD5也是很好的。

1 个答案:

答案 0 :(得分:0)

我想这不是一个真正的问题。在我看来,计算两次MD5在查询中的成本可以忽略不计。任何情况下你都可以重写它:

SELECT id, md5, 
  CASE
  WHEN md5 = @abc THEN 'abc'
  WHEN md5 = @def THEN 'def'
  ELSE NULL
 END AS identity
FROM url, (SELECT @abc:=MD5('abc'), @def:=MD5('def') ) X
WHERE md5 in (@abc, @def);