Op 11-feb-2011, om 10:41 heeft Nißl Reinhard het volgende geschreven: > Hi Jay, > > I understand that it is not possible to define what the correct > output is. > > But what I am asking for is a simple convention which doesn't > behave more badly in general (i. e. it's still database behavior) > but much better in my case and most likely for many cases of other > users too. > > The convention is to use the dequoted column identifier as column > name in case the column expression translates to a single identifier. > > You have to dequote the identifier anyway to find the column in the > subselect to which this expression refers to. > > So all I'm asking for is to change the default database behavior to > yield more obvious or consistent default column names. In case the > database behavior doesn't fit, one has to use the AS clause anyway. > > For the below mentioned join, sqlite3 currently behaves like that: > > select [x].[a], [y].[a] from x join x y on x.a = y.a; > > a|a > 1|1 > > Hence, it simply uses the column names. And the next statement does > that too: > > select [x].[a] from x; > > a > 1 > > So in my opinion the default behavior of the database should be to > yield the same column name even for this statement: > > select [x].[a] from (select a from x) x; > > But it currently returns: > > [x].[a] > 1 > > I'd like to create a patch which changes the behavior in that way, > but I'm not that used to the sqlite3 internals. From a quick glance > at the source, I think it has something to do with TK_COLUMN and > TK_VARIABLE. It would be nice if you could give me a pointer where > to place the change in the source code. > > Bye. > -- > Reinhard Nißl
Hi, The engine already determines unquoted column names when creating views. This also applies with inline-vies. For instance: sqlite>.mode line sqlite> select * from (select [x].[a] from (select a from x) x); a = 123 This also cuts off the unnecessary table alias. If column descriptions could be changed to be like this by default? Edzard Pasma _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users