title: When would combining columns into a single, delimited column be better in a RDB schema?
body: <p>Consider for example the case where you have two peaces of data, where one value is rarely used without the other.  As one example, here is a table holding user authentication data :</p>
  
  <pre><code>CREATE TABLE users
  (
  id INT PRIMARY KEY, 
  auth_name STRING,
  auth_password STRING,
  auth_password_salt STRING
  )
  </code></pre>
  
  <p>I think that password is meaningless without salt, and the other way around.  I also have the option on representing the data this way: </p>
  
  <pre><code>CREATE TABLE users
  (
  id INT PRIMARY KEY, 
  auth_name STRING,
  auth_secret STRING,
  )
  </code></pre>
  
  <p>And in <code>auth_secret</code>, store strings such as <code>D5SDfsuuAedW:unguessable42</code> </p>
  
  <p>In general, are there any situations where combining columns into one, delimited column would be a better choice?</p>
  
  <p>Even if it is never a "better choice" overall, are there any <em>costs</em> (performance, space, anything) to having more columns vs fewer columns (for the same data)?  My motivation is better understanding and to be able to more competently argue against it when someone suggests this sort of thing.</p>
  
  <p><hr>
  --<em><strong>edited</strong></em> I changed the example... original example as follows:</p>
  
  <pre><code>CREATE TABLE points
  (
  id INT PRIMARY KEY, 
  x_coordinate INT,
  y_coordinate INT,
  z_coordinate INT
  )
  </code></pre>
  
  <p>vs</p>
  
  <pre><code>CREATE TABLE points
  (
  id INT PRIMARY KEY,
  position STRING
  )
  </code></pre>
  
  <p>In <code>position</code>, storing strings such as <code>7:3:15</code></p>