plywood
Version:
A query planner and executor
44 lines • 2.54 kB
TypeScript
import type { Duration, Timezone } from 'chronoshift';
import { Attributes } from '../datatypes';
import { PlyType } from '../types';
import { SQLDialect } from './baseDialect';
export interface DruidDialectOptions {
attributes?: Attributes;
}
export declare class DruidDialect extends SQLDialect {
static TIME_PART_TO_FUNCTION: Record<string, string>;
static CAST_TO_FUNCTION: Record<string, Record<string, string>>;
private readonly attributes?;
constructor(options?: DruidDialectOptions);
dateToSQLDateString(date: Date): string;
floatDivision(numerator: string, denominator: string): string;
emptyGroupBy(): string;
timeToSQL(date: Date): string;
stringArrayToSQL(value: string[]): string;
ipParse(value: string): string;
ipPrefixParse(value: string): string;
concatExpression(a: string, b: string): string;
containsExpression(a: string, b: string, insensitive: boolean): string;
mvContainsExpression(a: string, b: string[]): string;
mvFilterOnlyExpression(a: string, b: string[]): string;
mvOverlapExpression(a: string, b: string[]): string;
substrExpression(a: string, position: number, length: number): string;
countDistinctExpression(a: string, parameterAttributeName: string | undefined): string;
isNotDistinctFromExpression(a: string, b: string): string;
castExpression(inputType: PlyType | undefined, operand: string, targetType: string): string;
private operandAsTimestamp;
timeFloorExpression(operand: string, duration: Duration, timezone: Timezone): string;
timeBucketExpression(operand: string, duration: Duration, timezone: Timezone): string;
timePartExpression(operand: string, part: string, timezone: Timezone): string;
timeShiftExpression(operand: string, duration: Duration, step: int, timezone: Timezone): string;
extractExpression(operand: string, regexp: string): string;
regexpExpression(expression: string, regexp: string): string;
indexOfExpression(str: string, substr: string): string;
quantileExpression(str: string, quantile: number, parameterAttributeName: string | undefined): string;
logExpression(base: string, operand: string): string;
lookupExpression(base: string, lookup: string): string;
ipMatchExpression(columnName: string, searchString: string, ipSearchType: string): string;
ipSearchExpression(columnName: string, searchString: string, ipSearchType: string): string;
ipStringifyExpression(operand: string): string;
}
//# sourceMappingURL=druidDialect.d.ts.map