I think it's ok, not great, but not that bad, either.
A mixed set with Volt Tackle, Grass Knot, and Hidden Power Ice works pretty well, actually, the problem is Pikachu's horrible HP, so, it will be just unnable to K.O too many things, but taking in account physical Pikachu tends to lure Ground Type Pokémon, then Pikachu can give them a (huge) surprise with Grass Knot, I recomend to spend some on Spa if this is tryed, you'll need most probably the extra punch on Grass Knot and specially Hidden Power Ice.
A Rain Dance set with someone else setting Rain is a pretty usable set, too, using Thunder on place of Thunderbolt gives Pikachu the extra punch that it needs to OHKO more things, and it do have good sinergy with the Rain Dance users because Pikachu can absorb the Electric Attacks that they tend to lure, and Pikachu makes a good offensive sinergy, too.
Finally, it's speed is decent enough to being able to revenge kill a good number of threats on the current metagame, too. The set of FLCL is maybe the best (and unique) if you don't want to use surprise factor (Mixed) or need to support (Rain), anyway. He can stop Volt Switchers on it's rides, too, by just switichg-in when they try to flee, and K.O them.
My problem with Pikachu is it's problem to handle priority users, that's a really bad problem taking the account how common are those moves, at least Pikachu can avoid with the proper prediction a Sucker Punch, something is something.
Nasty Plot Pikachu by other hand is wrong on so many levels... it's problem is it is just unnable to handle priority or scarfers, or actually, any faster Pokémon at all, so, Pikachu will be dead weight unless you (with huge team support) are able to destroy all it's checks, and even then, Pikachu have tiny paper defenses, so, you will need to bring him with a safe switch, somehow.
Thunderbolt/Thunder Spam alone is greatly outclassed by Raichu, who can use Choice Specs and surpass the power of Pikachu, and winning extra bulk, extra speed, and even the option of run some extra bulk for it's special sponge use. Encore Pikachu is also outclassed by Raichu who had higher speed and bulk, and can actually setup Nasty Plot and survive priority attacks, so, Pikachu is better just using it's Mixed/Standar sets the most of the time.
Any Pikachu sets need support to taking care of priority users (incluiding some Sucker Punchers), and Pikachu should be always stay far from them, so, if you can't eliminate them on mid. game, you'll need a decent defensive core who can take use of Pikachu's inmunnity to electric if possible. Pikachu also enjoy a Parashuffler, because them spread paralize and damage across the opponent's team, and Pikachu needs the extra damage to actually K.O important things, and it loves the paralize because Pikachu will just not be outspeeded without priority, and you can be saved the 25% of times, too.
A Pikachu set with 252 HP and 252 Spa is decent, too, depending of what you're interesed on outspeed with Pikachu, but it usually just work with the help of Parashuffling, it's still a good set to use because Pikachu will be able to survive almost any priority attack, and that's just enough to wreak havoc against one of it's "checks/counters". Encore can replace Substitute with this EV spread if you think you can make some use of it. Ampharos usually outclass this, but Pikachu does have Grass Knot, surprise factor, and can outspeed without investment more things.