0
productsとproducts_actionsの2つのテーブルがあります。Where-clauseテーブルが左結合されている
ユーザーが商品をクリックすると、このアクションをproducts_actionsに保存する必要があります。フィールドhas_removed
は1になります。
クリックしていない商品のみをユーザーに提示したいと思います。ユーザーが製品を削除していない場合
id: 1
id_product: 2
has_removed: 1
:
表 "製品":
id: 1
name: Product 1
id: 2
name: Product 2
id: 3
name: Product 3
表 "products_actions"
は現在、私は私のテーブルに次のエントリを持っていますこれまでの彼のページからは、products_actionsテーブルに対応するエントリはありません。
だから私のクエリは次のとおりです。
$qb->select('p')
->leftJoin(
'ProductsActions',
'pa',
'WITH',
'pa.idProduct = p.id'
)
->where('pa.hasRemoved != 1');
どのように私は私のクエリabovesがエントリとして「製品1」と「製品3」を提供することを達成していますか?
「not in」を使用すると、null可能性についての警告がなくてもお勧めできます – Drew