that is by design, and the normal behaviour for SQL server:
SQL tries to keep everything in memory to support subsequent queries. if you leave an installation at it's default settings(2 Terabytes?,which is more memory than anyone realistically will ever own), it will use ALL of the memory, and possibly starve the operating system for memory as well.
The whole idea is to keep everything in memory, instead of going to disk, as that IO operation slows things down.
it is not like other programs, that give memory back when it is "done"...it's never done, as far as SQL is concerned.
you can limit the amount of memory int eh memory settings under the server properties in the SSMS Object Explorer:
help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!