I bet there's hundred of threads on the topic..
anyway, you can use the masstagger or the quicktagger components to create a couple of script in order to add/edit a tag field in your file (typically the RATING tag), and associate keyboard shortcuts or UI buttons to these actions.
Then you could add a column to your playlist view to display the value stored in the tag.
I use 6 stars and a negative value for tracks I want to skip (with foo_skip)
so this is the culumns ui code for displaying 6 yellow-orange stars, changing in color depending on the rating. you'll need some good unicode fonts installed, like arial_unicode_ms.
$if(%rating%,
$ifequal(%rating%,-1,$rgb(94,48,34,255,172,89)♠,
$blend($rgb(255,100,0,255,255,205),$rgb(255,245,0,255,255,205),%rating%,6)
$repeat(★,%rating%)
$rgb(95,95,95,255,172,89)
$repeat(☆,$sub(6,%rating%))
),$repeat(☆,6))
these are the scripts I use in masstagger:
increase rating
$if(%rating%,$min(6,$add(%rating%,1)),3)
decrease
$if(%rating%,$max(0,$sub(%rating%,1)),2)
to set a definite value in one field the command is pretty straightforward..