Обсуждение: why does this not give a syntax error?
pg 9.2: delete from "ExternalDocument" where id = 11825657and "Billed" = 'f'; -- Scott Ribe scott_ribe@elevated-dev.com http://www.elevated-dev.com/ (303) 722-0567 voice
Scott Ribe <scott_ribe@elevated-dev.com> writes: > pg 9.2: > delete from "ExternalDocument" where id = 11825657and "Billed" = 'f'; "11825657and" is not any more lexically ambiguous than "11825657+". It has to be two separate tokens, and that's how it's read. regards, tom lane
On Jun 10, 2013, at 12:52 PM, Tom Lane wrote: > Scott Ribe <scott_ribe@elevated-dev.com> writes: >> pg 9.2: >> delete from "ExternalDocument" where id = 11825657and "Billed" = 'f'; > > "11825657and" is not any more lexically ambiguous than "11825657+". > It has to be two separate tokens, and that's how it's read. But it's not read correctly. In other words: delete from "ExternalDocument" where id = 11825657and "Billed" = 'f'; deleted 0 rows, while: delete from "ExternalDocument" where id = 11825657 and "Billed" = 'f'; deleted 1 row. ??? -- Scott Ribe scott_ribe@elevated-dev.com http://www.elevated-dev.com/ (303) 722-0567 voice
Scott Ribe <scott_ribe@elevated-dev.com> writes: > On Jun 10, 2013, at 12:52 PM, Tom Lane wrote: >> "11825657and" is not any more lexically ambiguous than "11825657+". >> It has to be two separate tokens, and that's how it's read. > But it's not read correctly. [ shrug... ] Works for me. You want to put together a self-contained test case showing differently? regards, tom lane