First off, please stop thinking in terms of keywords. I assure you that Google does not match keywords. The process is far more sophisticated than simply seeing if a term exists. In fact, term matches are not done. Semantic topic matches are however. So stop thinking in terms of keywords. It is a waste. Think topic.
The URL can be divided into 4 basic parts; the protocol and domain name, the path, the file name, and parameters. The order of importance is from left to right; domain name, path, file, and parameters with significant weight given to the domain name and path as better long standing indications of what a web page is about far more than the file name and parameters. In fact, the domain name and path along with inbound links are the highest value semantic clues you can give to any page followed by the h1 tag and description meta-tag. Keep this in mind.
Before you begin to think that you should also load keywords into a file name and parameter, please know that semantic over-scoring indicates over-optimization. Semantics can very easily indicate unnatural usage of language. So do not get carried away. Be natural.
Also please understand that any apparent search term match is simply the last step in a long series of algorithms and filters that only highlights the search terms. Please note that searches can match terms not found on sites and pages. For example, car versus automobile. This is done using ontologies to match search intent.
I wrote more in this answer: Why would a website with keyword stuffing rank higher than one without in google search results?