Mercurial > urweb
comparison caching-tests/test.ur @ 2295:e6c5bb62fef8
Fix SQL parser JOIN bug and fix ON clause logic in Sqlcache.
author | Ziv Scully <ziv@mit.edu> |
---|---|
date | Thu, 19 Nov 2015 03:45:39 -0500 |
parents | f8903af753ff |
children |
comparison
equal
deleted
inserted
replaced
2294:f8903af753ff | 2295:e6c5bb62fef8 |
---|---|
1 table tab : {Id : int, Val : int, Foo : int} PRIMARY KEY Id | 1 table tab : {Id : int, Val : int, Foo : int} PRIMARY KEY Id |
2 | 2 |
3 fun cache id = | 3 fun cache id = |
4 res <- oneOrNoRows (SELECT tab.Val FROM tab WHERE tab.Id = {[id]}); | 4 res <- oneOrNoRows (SELECT A.Val FROM (tab AS A JOIN tab AS B ON A.Id = B.Id) |
5 WHERE B.Id = {[id]}); | |
5 return <xml><body> | 6 return <xml><body> |
6 cache | 7 cache |
7 {case res of | 8 {case res of |
8 None => <xml>?</xml> | 9 None => <xml>?</xml> |
9 | Some row => <xml>{[row.Tab.Val]}</xml>} | 10 | Some row => <xml>{[row.A.Val]}</xml>} |
10 </body></xml> | 11 </body></xml> |
11 | 12 |
12 (* fun cacheAlt id = *) | 13 (* fun cacheAlt id = *) |
13 (* res <- oneOrNoRows (SELECT Q.Id *) | 14 (* res <- oneOrNoRows (SELECT Q.Id *) |
14 (* FROM (SELECT Tab.Id AS Id FROM tab WHERE Tab.Id = {[id]}) *) | 15 (* FROM (SELECT Tab.Id AS Id FROM tab WHERE Tab.Id = {[id]}) *) |