処理された行の量を返すように、Railsで次のクエリを再作成するにはどうすればよいですか?Mysql to Rails SQLクエリ
self.connection.execute('DELETE FROM `cd_artist`
LEFT JOIN `cdpedia` ON cd_artist.id = cdpedia.`artistId`
WHERE artistId IS NULL;')
私はそれが何かを返すようにするために、私はArtist.find_by_sql
のようなものを使用する必要があり実現が、それは私にエラーを与えます。
おそらく、これを行うよりエレガントな方法がありますか?
データベースを最初に検索してからIDを取得してObject.destroy
、さらにはObject.delete(id)
というエントリを削除しないようにしたいのですが、SQL呼び出しが非常に高速です(正しいインデックスがある場合)それを行うための「正しい」方法は何か不思議です。
あなたの質問は間違っているようです。既にデータベースで直接テストしましたか? – basgys