2016-10-27 7 views
1

もし私が雄弁な関係を望むならば。似たような関係のLIKE比較

public function subscribed(){ 

    return $this->hasOne('App\Models\SuppressionList', 'email', 'email'); 

} 

主テーブル上のメール属性が[email protected]だったと外部テーブル上の電子メール属性が[email protected]たかのように、これは厳密な等価比較を行います。ゆるい関係を作成する方法はありますか?=とは対照的に、LIKEコンパレータを使ってレコードを結合する方法はありますか?

乾杯

答えて

2

多分これは私が必要以上にあなたの例の例より多くになりますが、、電子メール、少なくともほとんどのプロバイダが提供する、多くの場合、ちょうど小文字を区別しない場合よりもあります。彼らはまた通常、ユーザ名の.を無視します。

このような場合は、display_email(プレゼンテーションに問題がある場合はユーザーが入力した内容)と、ユーザー名にピリオドを除いたcanonical_emailの2つのフィールド、すべて小文字などがあることがよくあります。これは、大規模なテーブルを結合するとき(毎回変換を行うのではなく)、CPUサイクルを節約することができます。

関連する問題