【发布时间】:2021-03-10 10:08:12
【问题描述】:
我的 ruby 代码中有一个 SQL 查询,但我的 rubocop 在 WHEN 行中给我一个错误 - layout/linelength line is too long. [128/120]。下面划分查询的正确方法是什么?
SELECT
bank_transfers.date AS day,
CAST(SUM(bank_transfers.amount_cents) AS BIGINT) AS gross_value,
CAST(SUM(CASE WHEN bank_transfers.amount_cents < 0 THEN bank_transfers.amount_cents END) AS BIGINT) AS expenses_sum,
CAST(SUM(CASE WHEN bank_transfers.amount_cents > 0 THEN bank_transfers.amount_cents END) AS BIGINT) AS revenues_sum
FROM bank_transfers
JOIN customers ON customers.id = bank_transfers.customer_id
WHERE customers.id = #{customer.id}
AND bank_transfers.date < '#{Date.current}'
AND bank_transfers.date >= '#{final_past_date}'
GROUP BY day
【问题讨论】:
-
我认为 Rubocop 不会报告错误。它只是给出了遵循某种风格指南或与你的同事讨论代码应该是什么样子的建议。因此,当您认为代码看起来不错并且易于阅读和理解时,我认为忽略(禁用)某些违规行为是完全可以的。
标签: sql ruby postgresql rubocop