あなたが言及している問題は、ナップザックの問題 としても知られています 。これを解決するために使用できるさまざまなアルゴリズムがあります。最もよく知られているのは動的計画法です。重みは整数である必要があるため、セントで測定する必要があります。 t-sql で簡単に実装できるものはありません。
私は実際にSQLサーバーで誰かの実装へのリンクを見つけました:http://sqlinthewild.co.za/index.php/2011/02/22/and-now-for-a 完全に不適切な使用- of-sql-server/
タイトルに注目してください。彼らもデータベースの不適切な使用を発見しました。別の言語でこれを解決することをお勧めします。