> So here are my questions: > > 1) Is there anyway to control this behavior of daterange(), or is it just > best to (for example) add 1 to the upper bound argument if I want an > inclusive upper bound?
See link for question #3; namely use the three-arg version of daterange (type,type,text)
> 2) This is purely cosmetic, but is there anyway to control the output > formatting of a daterange to show the upper bound as inclusive? So that > daterange(d1,d2) would display as [d1,d2-1] rather than [d1,d2)?
Not easily - you could write a custom type with the desired canonical form.
> 3) I couldn't find this discussed in the documentation, and specifically > didn't find the daterange() function documented, including on this page > where I might have expected it: > http://www.postgresql.org/docs/9.3/static/functions-range.html. Is it > somewhere else where I'm not finding it?
Yes, the documentation could maybe use some work on this topic. The relevant information is provided at: