Because every Walmart has a line of people waiting, at 6:30AM, at the ammo counter, to buy ammo, as it's being stocked. By 8:30 AM, it's all gone because nobody wants to miss a chance to buy ammo.
This quote is from a recent closed thread. No it is not because of this. None of my local Walmarts have been getting anything but hunting rounds and shotgun shells. I should know I work off duty security late night to morning shifts when they recieve the stock and place the palates on the floor. There hasn't been any common use pistol ammo in a month.(22lr, 380, 9mm, 40, 45acp) Cause I check every time they stock. There ain't no line to get it either.
Now the local shop gets some in every once in a while. He sells some and keeps the rest to match stock in guns he is selling. Just so if someone buys a gun they can at least buy a box of ammo to shoot it.