congrats Icon
New! Announcing Tabnine Chat Beta
Learn More
Tabnine Logo
RelMdColumnUniqueness
Code IndexAdd Tabnine to your IDE (free)

How to use
RelMdColumnUniqueness
in
org.apache.calcite.rel.metadata

Best Java code snippets using org.apache.calcite.rel.metadata.RelMdColumnUniqueness (Showing top 14 results out of 315)

origin: org.apache.calcite/calcite-core

public Boolean areColumnsUnique(Minus rel, RelMetadataQuery mq,
  ImmutableBitSet columns, boolean ignoreNulls) {
 if (areColumnsUnique((SetOp) rel, mq, columns, ignoreNulls)) {
  return true;
 }
 return mq.areColumnsUnique(rel.getInput(0), columns, ignoreNulls);
}
origin: org.apache.calcite/calcite-core

public Boolean areColumnsUnique(RelSubset rel, RelMetadataQuery mq,
  ImmutableBitSet columns, boolean ignoreNulls) {
 int nullCount = 0;
 for (RelNode rel2 : rel.getRels()) {
  if (rel2 instanceof Aggregate
    || rel2 instanceof Filter
    || rel2 instanceof Values
    || rel2 instanceof TableScan
    || simplyProjects(rel2, columns)) {
   try {
    final Boolean unique = mq.areColumnsUnique(rel2, columns, ignoreNulls);
    if (unique != null) {
     if (unique) {
      return true;
     }
    } else {
     ++nullCount;
    }
   } catch (CyclicMetadataException e) {
    // Ignore this relational expression; there will be non-cyclic ones
    // in this set.
   }
  }
 }
 return nullCount == 0 ? false : null;
}
origin: Qihoo360/Quicksql

case INNER:
 final Pair<ImmutableBitSet, ImmutableBitSet> leftAndRightColumns =
   splitLeftAndRightColumns(rel.getLeft().getRowType().getFieldCount(),
     columns);
 final ImmutableBitSet leftColumns = leftAndRightColumns.left;
origin: Qihoo360/Quicksql

public static final RelMetadataProvider SOURCE =
  ReflectiveRelMetadataProvider.reflectiveSource(
    BuiltInMethod.COLUMN_UNIQUENESS.method, new RelMdColumnUniqueness());
origin: org.apache.calcite/calcite-core

case INNER:
 final Pair<ImmutableBitSet, ImmutableBitSet> leftAndRightColumns =
   splitLeftAndRightColumns(rel.getLeft().getRowType().getFieldCount(),
     columns);
 final ImmutableBitSet leftColumns = leftAndRightColumns.left;
origin: org.apache.calcite/calcite-core

public static final RelMetadataProvider SOURCE =
  ReflectiveRelMetadataProvider.reflectiveSource(
    BuiltInMethod.COLUMN_UNIQUENESS.method, new RelMdColumnUniqueness());
origin: Qihoo360/Quicksql

public Boolean areColumnsUnique(Minus rel, RelMetadataQuery mq,
  ImmutableBitSet columns, boolean ignoreNulls) {
 if (areColumnsUnique((SetOp) rel, mq, columns, ignoreNulls)) {
  return true;
 }
 return mq.areColumnsUnique(rel.getInput(0), columns, ignoreNulls);
}
origin: Qihoo360/Quicksql

  splitLeftAndRightColumns(rel.getLeft().getRowType().getFieldCount(),
    columns);
final ImmutableBitSet leftColumns = leftAndRightColumns.left;
origin: Qihoo360/Quicksql

public Boolean areColumnsUnique(RelSubset rel, RelMetadataQuery mq,
  ImmutableBitSet columns, boolean ignoreNulls) {
 int nullCount = 0;
 for (RelNode rel2 : rel.getRels()) {
  if (rel2 instanceof Aggregate
    || rel2 instanceof Filter
    || rel2 instanceof Values
    || rel2 instanceof TableScan
    || simplyProjects(rel2, columns)) {
   try {
    final Boolean unique = mq.areColumnsUnique(rel2, columns, ignoreNulls);
    if (unique != null) {
     if (unique) {
      return true;
     }
    } else {
     ++nullCount;
    }
   } catch (CyclicMetadataException e) {
    // Ignore this relational expression; there will be non-cyclic ones
    // in this set.
   }
  }
 }
 return nullCount == 0 ? false : null;
}
origin: Qihoo360/Quicksql

public Boolean areColumnsUnique(Intersect rel, RelMetadataQuery mq,
  ImmutableBitSet columns, boolean ignoreNulls) {
 if (areColumnsUnique((SetOp) rel, mq, columns, ignoreNulls)) {
  return true;
 }
 for (RelNode input : rel.getInputs()) {
  Boolean b = mq.areColumnsUnique(input, columns, ignoreNulls);
  if (b != null && b) {
   return true;
  }
 }
 return false;
}
origin: org.apache.calcite/calcite-core

  splitLeftAndRightColumns(rel.getLeft().getRowType().getFieldCount(),
    columns);
final ImmutableBitSet leftColumns = leftAndRightColumns.left;
origin: org.apache.calcite/calcite-core

public Boolean areColumnsUnique(Intersect rel, RelMetadataQuery mq,
  ImmutableBitSet columns, boolean ignoreNulls) {
 if (areColumnsUnique((SetOp) rel, mq, columns, ignoreNulls)) {
  return true;
 }
 for (RelNode input : rel.getInputs()) {
  Boolean b = mq.areColumnsUnique(input, columns, ignoreNulls);
  if (b != null && b) {
   return true;
  }
 }
 return false;
}
origin: org.apache.calcite/calcite-core

    .get(BuiltInMethod.COLUMN_UNIQUENESS.method)
    .iterator().next();
assertThat(handler.areColumnsUnique(values, mq, col0, false),
  is(true));
assertThat(handler.areColumnsUnique(values, mq, col1, false),
  is(false));
assertThat(handler.areColumnsUnique(values, mq, colAll, false),
  is(true));
assertThat(handler.areColumnsUnique(values, mq, colNone, false),
  is(false));
origin: Qihoo360/Quicksql

    .get(BuiltInMethod.COLUMN_UNIQUENESS.method)
    .iterator().next();
assertThat(handler.areColumnsUnique(values, mq, col0, false),
  is(true));
assertThat(handler.areColumnsUnique(values, mq, col1, false),
  is(false));
assertThat(handler.areColumnsUnique(values, mq, colAll, false),
  is(true));
assertThat(handler.areColumnsUnique(values, mq, colNone, false),
  is(false));
org.apache.calcite.rel.metadataRelMdColumnUniqueness

Javadoc

RelMdColumnUniqueness supplies a default implementation of RelMetadataQuery#areColumnsUnique for the standard logical algebra.

Most used methods

  • areColumnsUnique
  • <init>
  • simplyProjects
  • splitLeftAndRightColumns
    Splits a column set between left and right sets.

Popular in Java

  • Updating database using SQL prepared statement
  • getOriginalFilename (MultipartFile)
    Return the original filename in the client's filesystem.This may contain path information depending
  • setContentView (Activity)
  • getContentResolver (Context)
  • Kernel (java.awt.image)
  • RandomAccessFile (java.io)
    Allows reading from and writing to a file in a random-access manner. This is different from the uni-
  • KeyStore (java.security)
    KeyStore is responsible for maintaining cryptographic keys and their owners. The type of the syste
  • NumberFormat (java.text)
    The abstract base class for all number formats. This class provides the interface for formatting and
  • HttpServletRequest (javax.servlet.http)
    Extends the javax.servlet.ServletRequest interface to provide request information for HTTP servlets.
  • Logger (org.slf4j)
    The org.slf4j.Logger interface is the main user entry point of SLF4J API. It is expected that loggin
  • Github Copilot alternatives
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now