Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread RSmith
On 2014/05/06 06:47, Scott Robison wrote: Except it doesn't, because C compilers can warn when you type "if (var = constant) ...;" when you probably meant "if (var == constant) ...;". If at least some C compiler implementations can do that within the confines of the ANSI C 89 standard, SQLite

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Scott Robison
On Mon, May 5, 2014 at 9:07 PM, Jay Kreibich wrote: > > On May 5, 2014, at 6:16 PM, Scott Robison wrote: > > > On Mon, May 5, 2014 at 4:15 PM, Jay Kreibich wrote: > > > >> So far this whole discussion seems to boiled down to the fact

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Jay Kreibich
On May 5, 2014, at 6:16 PM, Scott Robison wrote: > On Mon, May 5, 2014 at 4:15 PM, Jay Kreibich wrote: > >> So far this whole discussion seems to boiled down to the fact that SQLite >> doesn’t have a native Boolean type. That’s it. No, it doesn’t.

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Scott Robison
On Mon, May 5, 2014 at 4:15 PM, Jay Kreibich wrote: > So far this whole discussion seems to boiled down to the fact that SQLite > doesn’t have a native Boolean type. That’s it. No, it doesn’t. Once we > accept that, everything else makes perfect sense based off existing >

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread mm.w
Hihihi, some folks do not share the same references, anyway yes 3 passes that's named super bowle, LOL (warning many bad jokes inside) On Mon, May 5, 2014 at 3:31 PM, Petite Abeille wrote: > > On May 6, 2014, at 12:15 AM, Jay Kreibich wrote: > > >

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Petite Abeille
On May 6, 2014, at 12:15 AM, Jay Kreibich wrote: > Cross what bridge? http://www.youtube.com/watch?v=zKhEw7nD9C4 > You seem to be trying to use common sense and semantic meaning to make an > argument. To quote an old CS prof, “If you argue in English**, you’re > wrong.”

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Jay Kreibich
On May 5, 2014, at 3:03 PM, Petite Abeille wrote: > > On May 5, 2014, at 9:15 PM, RSmith wrote: > >> Je suis desole mon ami… > > Moi aussi :P > > I have no quarrel with you, good Sir Knight, but I must cross this bridge: > > select 1 where 1

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread mm.w
LOL be careful not to break the stinger and leave it buried in the skin. Hello Petite Abeille, when you "eval" an expression, are you doing from the right or on the lvalue. Best. On Mon, May 5, 2014 at 1:03 PM, Petite Abeille wrote: > > On May 5, 2014, at 9:15

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Petite Abeille
On May 5, 2014, at 9:15 PM, RSmith wrote: > Je suis desole mon ami… Moi aussi :P I have no quarrel with you, good Sir Knight, but I must cross this bridge: select 1 where 1 is 1; select 1 where 1 is not 1; select 1 where 1 is ( 1 = 1 ); select 1 in ( null ); — oh…

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread RSmith
On 2014/05/05 20:46, Petite Abeille wrote: On May 5, 2014, at 8:21 PM, RSmith wrote: the idea that introducing more complication will make erros/bugs less is just false. Straw man argument, unrelated to the topic at hand. Je suis desole mon ami... That comment was not

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Marc L. Allen
--Original Message- From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users-boun...@sqlite.org] On Behalf Of Petite Abeille Sent: Monday, May 05, 2014 2:46 PM To: General Discussion of SQLite Database Subject: Re: [sqlite] select 1 where 1 - 1; On May 5, 2014, at 8:21 PM, RSmith <rsm...@rsweb

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Petite Abeille
On May 5, 2014, at 8:21 PM, RSmith wrote: > the idea that introducing more complication will make erros/bugs less is just > false. Straw man argument, unrelated to the topic at hand. This is solely about the SQL parser failing short of reporting syntax errors for

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread RSmith
On 2014/05/05 20:00, Richard Hipp wrote: I am deeply committed to the concept that simpler is better. And I am deeply skeptical of arguments that making a language more complex by adding new type rules does anything to reduce bugs. To add to this, I have heard a lot of proponents on both

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Petite Abeille
On May 5, 2014, at 8:00 PM, Richard Hipp wrote: > Petite's complaint is that in most other SQL database engines, 0 is not > false. If you try to use 0 where a boolean is needed, you get a syntax > error. In strict SQL, boolean and integer are incompatible types that > cannot

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Scott Robison
On May 5, 2014 11:36 AM, "Stephan Beal" wrote: > > I mean ‘where 1’, or ‘where ‘1 - 1’, or ‘where null’, or ‘where 0 / 0’, or > > any of this nonsense. There is nothing to compare. It’s nonsensical. > > Oh, but there is: 1-1 is an expression, the result of which is integer

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Richard Hipp
On Mon, May 5, 2014 at 1:36 PM, Stephan Beal wrote: > On Mon, May 5, 2014 at 7:31 PM, Petite Abeille >wrote: > > > On May 5, 2014, at 7:15 PM, Stephan Beal wrote: > > > Why expect an error? It's abstractly the same as

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Jay Kreibich
The WHERE clause takes only one parameter. WHERE expects an expression, which evaluates down to one value. That expression does not need to be a comparison. It commonly is, but it can be anything, such as a CASE expression, an EXISTS subselect, or a function. As far as SQLite cares, all

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Petite Abeille
On May 5, 2014, at 7:36 PM, Stephan Beal wrote: > Oh, but there is: 1-1 is an expression, the result of which is integer 0 It’s nonsensical as a where clause expression. > (as opposed to string '0'), which, in all programming environments except, > IIRC, Xenix, is

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Stephan Beal
On Mon, May 5, 2014 at 7:31 PM, Petite Abeille wrote: > On May 5, 2014, at 7:15 PM, Stephan Beal wrote: > > Why expect an error? It's abstractly the same as saying WHERE 'a' = 'b’, > > I mean ‘where 1’, or ‘where ‘1 - 1’, or ‘where null’, or

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Petite Abeille
On May 5, 2014, at 7:15 PM, Stephan Beal wrote: > Why expect an error? It's abstractly the same as saying WHERE 'a' = 'b’, I mean ‘where 1’, or ‘where ‘1 - 1’, or ‘where null’, or ‘where 0 / 0’, or any of this nonsense. There is nothing to compare. It’s nonsensical.

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Stephan Beal
On Mon, May 5, 2014 at 6:56 PM, Petite Abeille wrote: > > select 1 where 1 = 1; > > Indeed. I would have expected a syntax error along the lines of 'invalid > relational operator’ or such. And that’s that. > Why expect an error? It's abstractly the same as saying

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Petite Abeille
On May 5, 2014, at 1:14 AM, James K. Lowden wrote: > To amplify the point, the issue isn't pure fussiness or obligation to > adhere to standards. A permissive parser invites error. Exactly. > It's not hard to imagine > > select 1 where 1 - 1; > > was

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Richard Hipp
On Mon, May 5, 2014 at 11:35 AM, Marc L. Allen wrote: > Really? Interesting. > > So... > > Select 1 Where 1 < inf; ? > > Or is it just when taking inf by itself? > Maybe I'm wrong. It's division by 0.0 that gives NULL as an answer. Perhaps if you insert an inf

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Marc L. Allen
ion of SQLite Database Subject: Re: [sqlite] select 1 where 1 - 1; On Mon, May 5, 2014 at 11:28 AM, mm.w <0xcafef...@gmail.com> wrote: > select inf; should be true or false? :) > Neither true nor false. SQLite considers infinity to be the same as NULL. -- D. Richard Hipp

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Richard Hipp
On Mon, May 5, 2014 at 11:28 AM, mm.w <0xcafef...@gmail.com> wrote: > select inf; should be true or false? :) > Neither true nor false. SQLite considers infinity to be the same as NULL. -- D. Richard Hipp d...@sqlite.org ___ sqlite-users mailing

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread mm.w
I know Simon, just asking, nope an empty string is a valid string, else you say no NULL allowed for strings, might be a backend option 8) On Mon, May 5, 2014 at 8:27 AM, Simon Slavin wrote: > > On 5 May 2014, at 4:18pm, mm.w <0xcafef...@gmail.com> wrote: > > > "an empty

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread mm.w
select inf; should be true or false? :) On Mon, May 5, 2014 at 8:18 AM, mm.w <0xcafef...@gmail.com> wrote: > Hello, > > "an empty string should be false" strongly disagree, a NULL string should > be solely false, now in this case, the question is: comparisons should be > handled as bin or by;

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread Simon Slavin
On 5 May 2014, at 4:18pm, mm.w <0xcafef...@gmail.com> wrote: > "an empty string should be false" strongly disagree, a NULL string should > be solely false, now in this case, the question is: comparisons should be > handled as bin or by; 'literal' values? or equality/comparison must not be >

Re: [sqlite] select 1 where 1 - 1;

2014-05-05 Thread mm.w
Hello, "an empty string should be false" strongly disagree, a NULL string should be solely false, now in this case, the question is: comparisons should be handled as bin or by; 'literal' values? or equality/comparison must not be eval'ed and strictly made on type? one other of the quirk would

Re: [sqlite] select 1 where 1 - 1;

2014-05-04 Thread James K. Lowden
On Fri, 2 May 2014 21:09:46 +0200 Petite Abeille wrote: > > On May 2, 2014, at 8:54 PM, Richard Hipp wrote: > > > I'm guessing that Mr. Abeille is upset that SQLite ? > > ? doesn?t even bother with SQL syntax and will happily accept any old > junk

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread Jay Kreibich
; Strings are, however, handled incorrectly: > sqlite> select 1 where 'A'; > sqlite> select 1 where not 'A'; > 1 > > ^^^ are inverted 'A' should be true, whereas not 'A' should be false; and, For logic operations, strings are converted into numbers. ‘A’ doesn’t translate to a nu

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread Keith Medcalf
>On May 2, 2014, at 8:54 PM, Richard Hipp wrote: >> I'm guessing that Mr. Abeille is upset that SQLite ... >... doesn't even bother with SQL syntax and will happily accept any old >junk as a sorry excuse for a query. >select 1 where null; >select 1 where not null; What is

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread Petite Abeille
On May 2, 2014, at 9:24 PM, Cory Nelson wrote: > quirks A peculiar behavioral habit. Idiosyncrasy, peculiarity, oddity, eccentricity, foible, whim, vagary, caprice. Indeed. ___ sqlite-users mailing list sqlite-users@sqlite.org

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread Cory Nelson
On Fri, May 2, 2014 at 2:09 PM, Petite Abeille wrote: > > On May 2, 2014, at 8:54 PM, Richard Hipp wrote: > >> I'm guessing that Mr. Abeille is upset that SQLite … > > … doesn’t even bother with SQL syntax and will happily accept any old junk as > a

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread Petite Abeille
On May 2, 2014, at 8:54 PM, Richard Hipp wrote: > I'm guessing that Mr. Abeille is upset that SQLite … … doesn’t even bother with SQL syntax and will happily accept any old junk as a sorry excuse for a query. select 1 where null; select 1 where not null; When SQLite 4 sees

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread Simon Slavin
On 2 May 2014, at 7:47pm, David King wrote: > Am I missing something? It's very clever for people who write programming languages to invent the idea of a boolean variable, and have 'IF' and 'WHERE' take boolean values as arguments, but I don't think it's obvious. Simon.

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread Richard Hipp
On Fri, May 2, 2014 at 2:47 PM, David King wrote: > > Quick, without trying it out, what would you expect the following > statement to return: > > select 1 where 1 - 1; > > (a) one row > > (b) no row > > (c) syntax error > > For extra entertainment, try some variations: > >

Re: [sqlite] select 1 where 1 - 1;

2014-05-02 Thread David King
> Quick, without trying it out, what would you expect the following statement > to return: > select 1 where 1 - 1; > (a) one row > (b) no row > (c) syntax error > For extra entertainment, try some variations: > select 1 where 1; > select 1 where 0; > etc... > Bonus points for a rationalization of

[sqlite] select 1 where 1 - 1;

2014-05-02 Thread Petite Abeille
Quick, without trying it out, what would you expect the following statement to return: select 1 where 1 - 1; (a) one row (b) no row (c) syntax error For extra entertainment, try some variations: select 1 where 1; select 1 where 0; etc... Bonus points for a rationalization of any of the