Search in sources :

Example 31 with Query

use of org.teiid.query.sql.lang.Query in project teiid by teiid.

the class TestOrderByRewrite method testDefect10729.

/**
 * partially-qualified ORDER BY's with ambiguous short group names
 */
@Test
public void testDefect10729() throws Exception {
    // $NON-NLS-1$
    Query resolvedQuery = (Query) getCommand("SELECT pm1.g1.e1 FROM pm1.g1 ORDER BY g1.e1");
    helpCheckElements(resolvedQuery.getOrderBy(), // $NON-NLS-1$
    new String[] { "pm1.g1.e1" }, // $NON-NLS-1$
    new String[] { "pm1.g1.e1" });
}
Also used : Query(org.teiid.query.sql.lang.Query) Test(org.junit.Test)

Example 32 with Query

use of org.teiid.query.sql.lang.Query in project teiid by teiid.

the class TestAccessNode method testExecCount.

@Test
public void testExecCount() throws Exception {
    // Setup
    AccessNode node = new AccessNode(1);
    // $NON-NLS-1$
    Query query = (Query) TestResolver.helpResolve("SELECT e1, e2 FROM pm1.g1 WHERE e2 = 5", RealMetadataFactory.example1Cached());
    node.setCommand(query);
    CommandContext context = new CommandContext();
    BufferManager bm = BufferManagerFactory.getStandaloneBufferManager();
    FakeDataManager dataManager = new FakeDataManager();
    TestProcessor.sampleData1(dataManager);
    node.setElements(query.getProjectedSymbols());
    node.initialize(context, bm, dataManager);
    // Call open()
    node.open();
    // $NON-NLS-1$
    assertEquals(Arrays.asList("SELECT e1, e2 FROM pm1.g1 WHERE e2 = 5"), dataManager.getQueries());
}
Also used : Query(org.teiid.query.sql.lang.Query) CommandContext(org.teiid.query.util.CommandContext) FakeDataManager(org.teiid.query.processor.FakeDataManager) BufferManager(org.teiid.common.buffer.BufferManager) Test(org.junit.Test)

Example 33 with Query

use of org.teiid.query.sql.lang.Query in project teiid by teiid.

the class TestAccessNode method testShouldExecuteLimitZero.

@Test
public void testShouldExecuteLimitZero() throws Exception {
    // $NON-NLS-1$
    Query query = (Query) QueryParser.getQueryParser().parseCommand("SELECT e1, e2 FROM pm1.g1 LIMIT 0");
    assertFalse(RelationalNodeUtil.shouldExecute(query, false));
}
Also used : Query(org.teiid.query.sql.lang.Query) Test(org.junit.Test)

Example 34 with Query

use of org.teiid.query.sql.lang.Query in project teiid by teiid.

the class TestAccessNode method testOpen_Defect16059.

@Test
public void testOpen_Defect16059() throws Exception {
    // $NON-NLS-1$
    Query query = (Query) TestResolver.helpResolve("SELECT e1, e2 FROM pm1.g1 WHERE e2 = 5 AND ? IS NULL", RealMetadataFactory.example1Cached());
    IsNullCriteria nullCrit = (IsNullCriteria) ((CompoundCriteria) query.getCriteria()).getCriteria(1);
    nullCrit.setExpression(new Constant(null));
    // $NON-NLS-1$
    helpTestOpen(query, "SELECT e1, e2 FROM pm1.g1 WHERE e2 = 5", true);
}
Also used : Query(org.teiid.query.sql.lang.Query) Constant(org.teiid.query.sql.symbol.Constant) IsNullCriteria(org.teiid.query.sql.lang.IsNullCriteria) Test(org.junit.Test)

Example 35 with Query

use of org.teiid.query.sql.lang.Query in project teiid by teiid.

the class TestAlterResolving method testAlterProcedure.

@Test
public void testAlterProcedure() {
    AlterProcedure alterProc = (AlterProcedure) helpResolve("alter procedure MMSP5 as begin select param1; end", RealMetadataFactory.exampleBQTCached());
    assertNotNull(alterProc.getTarget().getMetadataID());
    Query q = (Query) ((CommandStatement) alterProc.getDefinition().getBlock().getStatements().get(0)).getCommand();
    assertTrue(((ElementSymbol) q.getSelect().getSymbol(0)).isExternalReference());
}
Also used : AlterProcedure(org.teiid.query.sql.lang.AlterProcedure) Query(org.teiid.query.sql.lang.Query) Test(org.junit.Test)

Aggregations

Query (org.teiid.query.sql.lang.Query)97 Test (org.junit.Test)58 GroupSymbol (org.teiid.query.sql.symbol.GroupSymbol)31 Select (org.teiid.query.sql.lang.Select)30 ElementSymbol (org.teiid.query.sql.symbol.ElementSymbol)26 From (org.teiid.query.sql.lang.From)25 Constant (org.teiid.query.sql.symbol.Constant)22 SetQuery (org.teiid.query.sql.lang.SetQuery)21 MultipleElementSymbol (org.teiid.query.sql.symbol.MultipleElementSymbol)20 UnaryFromClause (org.teiid.query.sql.lang.UnaryFromClause)13 Limit (org.teiid.query.sql.lang.Limit)10 ArrayList (java.util.ArrayList)9 Expression (org.teiid.query.sql.symbol.Expression)9 SQLException (java.sql.SQLException)7 Reference (org.teiid.query.sql.symbol.Reference)7 CompareCriteria (org.teiid.query.sql.lang.CompareCriteria)6 ODataApplicationException (org.apache.olingo.server.api.ODataApplicationException)5 List (java.util.List)4 ODataLibraryException (org.apache.olingo.server.api.ODataLibraryException)4 TeiidProcessingException (org.teiid.core.TeiidProcessingException)4