Exemplo n.º 1
0
        public void Where_OrderBy_Skip_Take_Select_Sql2008()
        {
            Database db = new SqlSetForSqlServer.Sql2008Database();

            SqlSet set = db.From("products")
                         .Where("UnitsInStock > 0")
                         .OrderBy("ProductID")
                         .Skip(0)
                         .Take(5)
                         .Select("ProductName");

            SqlBuilder expected = SQL
                                  .SELECT("ProductName")
                                  .FROM(SQL
                                        .SELECT("ROW_NUMBER() OVER (ORDER BY ProductID) AS dbex_rn, __rn.*")
                                        .FROM(SQL
                                              .SELECT("*")
                                              .FROM("products"), "__rn")
                                        .WHERE("UnitsInStock > 0"), "_")
                                  .WHERE("dbex_rn BETWEEN {0} AND {1}", 1, 5)
                                  .ORDER_BY("dbex_rn");

            Assert.IsTrue(SqlEquals(set, expected));
        }
        public void Where_OrderBy_Skip_Take_Select_Sql2008()
        {
            Database db = new SqlSetForSqlServer.Sql2008Database();

             SqlSet set = db.From("products")
            .Where("UnitsInStock > 0")
            .OrderBy("ProductID")
            .Skip(0)
            .Take(5)
            .Select("ProductName");

             SqlBuilder expected = SQL
            .SELECT("ProductName")
            .FROM(SQL
               .SELECT("ROW_NUMBER() OVER (ORDER BY ProductID) AS dbex_rn, __rn.*")
               .FROM(SQL
                  .SELECT("*")
                  .FROM("products"), "__rn")
               .WHERE("UnitsInStock > 0"), "_")
            .WHERE("dbex_rn BETWEEN {0} AND {1}", 1, 5)
            .ORDER_BY("dbex_rn");

             Assert.IsTrue(SqlEquals(set, expected));
        }