考虑这张表:
create_table "liquor_lots", force: :cascade do |t|
t.integer "recipe_id"
t.datetime "created_at", precision: 6, null: false
t.integer "counter"
end
以及由此产生的模型
class LiquorLot < ApplicationRecord
def lotcode
"#{recipe_id}#{created_at.strftime("%y")}#{created_at.strftime("%W")}#{created_at.strftime("%u")}"
end
def pallet_lotcode
"#{lotcode}-#{counter}"
end
end
我想在 SQL 中做同样的事情:
Select distinct(lotcode) from liquor_lots
我已经尝试过了,它失败是可以理解的,因为lotcode它不是桌子上的一列liquor_lots。但我一直被建议不要添加列来存储从其他列中的数据派生的数据。
那么如何搜索这些值呢?
对于上下文,我lotcode实际上由更多的值串联在一起组成,为了便于阅读,我在示例中只限制了三个值。