When we have both a nucleotide query sequence and a nucleotide database is it best to use tblastx? I read that tblastx is superior because it helps account for wobble bases in codons, but in many publications I simply see people using blastn.
I'll add that it is important to explicitly consider the biology. A key question is:
Are your database sequences from the same species as your query sequence?
If yes - then BLASTN is great.
However, nucleotide sequences can diverge very rapidly across species. If your search is based on protein-coding genes, then consider that amino-acid sequence diverge less rapidly. In other words, very different DNA sequences can yield almost the same protein sequence. Thus if you are searching across species, you'll have more power to detect similarities if you search "in protein space", for example using TBLASTX. Even better if you can use a protein query (e.g., using BLASTX).
For general nucleotide searches, blastn is much faster and therefore preferred. In such searches usually there is no concept of coding or non-coding sequences, so wobble bases in codons do not enter the picture.
If you have only coding sequences in your dataset and similarly in the database, usually you will get more hits with tblastx, and not only because of wobble bases, but also because of codon degeneracy in general. This search, however, will be considerably slower because of double translation.
It may be a better idea to first translate both databases and use blastp. At the very least, translating your target database and using blastx should also be faster, assuming that the target database is larger of the two.