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]}) *)