Sequel gem と MySQL データベースを使用してvalidates_unique検証を追加しようとしています。
column2
の値がの既存の値と一致する場合、検証に失敗するようにしたいcolumn3
ので、次のような (動作しない) 例:
validates_unique(:email_address){|ds| ds.where('unconfirmed_email NOT LIKE confirmed_email')}
目的の結果を得るためにこのクエリを使用したsqlfiddleを次に示します。
SELECT DISTINCT value
FROM (
SELECT DISTINCT confirmed_email AS value FROM email_addresses
UNION SELECT DISTINCT unconfirmed_email AS value FROM email_addresses
) AS derived
それを続編の検証にマッピングするのに苦労しています。任意のガイダンスをいただければ幸いです。