About this question
Please suggest the best data type to store the results of the HASHBYTES('MD5', ...)? It outputs 16 bytes of binary as follows: e.g.
I could store it in the three data types: char(34) binary(16) (I think - I read here (https://stackoverflow.com/questions/14722305/what-kind-of-datatype-should-one-use-to-store-hashes#16680423) that using the same algo should return the same number of bytes every time regardless of the input string) other?
Every row will have a value (no nulls), and the column will be used for comparison against a similar column in another table. Which is the best data type to store SQL server HASHBYTES output for use as described above? I was thinking that since fixed-length data types can sometimes be more efficient on joins, etc. binary(16) vs varbinary(8000) (the default output of HASHBYTES) seems best, and binary(16) vs a varchar(34) is better since it would use less storage space.