9

esqueleto を使用して次のクエリは可能ですか?

DELETE Table1
FROM Table1
INNER JOIN Table2 ON Table1.ID = Table2.ItemID

私はもう試した:

delete $ 
  from $ \(table1 `InnerJoin` table2) -> 
    on (table1 ^. Table1ID  ==. table2 ^. Table2ItemID)

奇妙なことに、私がこれまで Haskell で見た唯一の実行時エラーの 1 つを生成した

ERROR:  syntax error at or near "INNER"
LINE 2: FROM "table1" INNER JOIN "table2" ON "tab...

(基本的にDELETE、「table1」が欠けていたのは残念でした)

モナドに戻り値を追加することも試みました。これは、select と同様に、欠落している値を追加する可能性があります。しかし、delete には type のモナドが必要なため、これは失敗しますm ()

これが Esqueleto から欠落している可能性はありますか?

4

3 に答える 3

-3

MS SQLでは、次の方法で結合を使用してテーブルを削除できます

DELETE Table1,Table2  FROM Table1 INNER JOIN Table2
WHERE Table1.Id1= Table2.Id1 and Table1.Id1= '1'
于 2015-10-09T02:52:27.203 に答える