我有一个多次使用'' as <alias>的查询,例如:
SELECT -- ...
'' as first_name,
'' as last_name,
'' as email_address
-- ...这似乎只返回空值的列。
这个查询还有其他的副作用吗?
查询是旧的,我相信有客户端需要这些字段(空或非空)。
这会不会造成我在Java中更好处理的任何开销?有没有更好的方法来返回空列而不使用这个不直观的子句?
发布于 2017-07-07 00:14:37
你是对的,它是一个占位符,用来使列出现在输出中。它不会对查询产生其他影响。
唯一值得注意的开销是通过网络将额外的列数据传输到Java进程的开销。但由于它们是空字符串,除非您谈论的是100M行,否则将可以忽略不计。
如果您希望确认这不会导致数据库开销,请使用MySQL EXPLAIN特性来详细说明查询的成本。
https://stackoverflow.com/questions/44954020
复制相似问题