Annotation of embedaddon/sqlite3/test/select8.test, revision 1.1
1.1 ! misho 1: # 2001 September 15
! 2: #
! 3: # The author disclaims copyright to this source code. In place of
! 4: # a legal notice, here is a blessing:
! 5: #
! 6: # May you do good and not evil.
! 7: # May you find forgiveness for yourself and forgive others.
! 8: # May you share freely, never taking more than you give.
! 9: #
! 10: #***********************************************************************
! 11: # This file implements regression tests for SQLite library.
! 12: #
! 13: # The focus of this file is testing that LIMIT and OFFSET work for
! 14: # unusual combinations SELECT statements.
! 15: #
! 16: # $Id: select8.test,v 1.1 2008/01/12 12:48:09 drh Exp $
! 17:
! 18: set testdir [file dirname $argv0]
! 19: source $testdir/tester.tcl
! 20:
! 21: execsql {
! 22: CREATE TABLE songs(songid, artist, timesplayed);
! 23: INSERT INTO songs VALUES(1,'one',1);
! 24: INSERT INTO songs VALUES(2,'one',2);
! 25: INSERT INTO songs VALUES(3,'two',3);
! 26: INSERT INTO songs VALUES(4,'three',5);
! 27: INSERT INTO songs VALUES(5,'one',7);
! 28: INSERT INTO songs VALUES(6,'two',11);
! 29: }
! 30: set result [execsql {
! 31: SELECT DISTINCT artist,sum(timesplayed) AS total
! 32: FROM songs
! 33: GROUP BY LOWER(artist)
! 34: }]
! 35: puts result=$result
! 36: do_test select8-1.1 {
! 37: execsql {
! 38: SELECT DISTINCT artist,sum(timesplayed) AS total
! 39: FROM songs
! 40: GROUP BY LOWER(artist)
! 41: LIMIT 1 OFFSET 1
! 42: }
! 43: } [lrange $result 2 3]
! 44: do_test select8-1.2 {
! 45: execsql {
! 46: SELECT DISTINCT artist,sum(timesplayed) AS total
! 47: FROM songs
! 48: GROUP BY LOWER(artist)
! 49: LIMIT 2 OFFSET 1
! 50: }
! 51: } [lrange $result 2 5]
! 52: do_test select8-1.3 {
! 53: execsql {
! 54: SELECT DISTINCT artist,sum(timesplayed) AS total
! 55: FROM songs
! 56: GROUP BY LOWER(artist)
! 57: LIMIT -1 OFFSET 2
! 58: }
! 59: } [lrange $result 4 end]
! 60:
! 61:
! 62: finish_test
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>