Question: I have a date of birth DATE column in a customer table with ~13 million rows. I would like to query this table to find all customers who were born on a certain month and day of that month, but any year. 

Can I do this by casting the date into a char and doing a subscript query on the cast, or should I create an aditional char column, update it to hold just the month and day, or create three new integer columns to hold month, day and year, respectively?

This will be a very frequently used query criteria...

**EDIT:**... and the table has ~13 million rows.

Can you please provide an example of your best solution?

Answer: 
Can you use C++11? If so you could use [raw string literals](http://en.wikipedia.org/wiki/C++11#New_string_literals):

```
const GLchar* vert = R"END(
#version 120
attribute vec2 position;
void main()
{
    gl_Position = vec4( position, 0.0, 1.0 );
}
)END";

```

No need for escapes or explicit newlines. These strings start with an R (or r). You need a delimiter (I chose END) between the quote and the first parenthesis to escape parenthesis which you have in the code snippet.
To achieve this purpose I used sed. I have seperate files with GLSL which I edit (with proper syntax highlighting), and in the same time GLSL in inlined in C++. Not very cross platform, but with msys it works under windows.

In C++ code:

```
const GLchar* vert = 
#include "shader_processed.vert"
;

```

In Makefile:

```
shader_processed.vert: shader.vert
    sed -f shader.sed shader.vert > shader_processed.vert

programm: shader_processed.vert main.cpp
    g++ ...

```

shader.sed

```
s|\\|\\\\|g
s|"|\\"|g
s|$|\\n"|g
s|^|"|g

```