Domanda

I need to choose between VARCHAR and INT in a many to many relationship

Is it faster to do IN('1','21','311') or IN(1,21,311) in Mysql?

È stato utile?

Soluzione

You'll want to use integers whenever possible since their representation is fixed length, four bytes by default, and comparisons are done with a single operation. Indexing and comparing strings is always more expensive, but the longer the strings get, the bigger the difference.

In your example here, which uses trivially small numbers, they might perform about the same. With real-world numbers that have six or seven digits, though, you'll see a much bigger difference.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top