/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Constraint on query output removing output rows that do not meet a minimum
* number of distinct values of a specified column.See Also:
AWS
* API Reference
Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline const Aws::String& GetColumnName() const{ return m_columnName; } /** *Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline bool ColumnNameHasBeenSet() const { return m_columnNameHasBeenSet; } /** *Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline void SetColumnName(const Aws::String& value) { m_columnNameHasBeenSet = true; m_columnName = value; } /** *Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline void SetColumnName(Aws::String&& value) { m_columnNameHasBeenSet = true; m_columnName = std::move(value); } /** *Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline void SetColumnName(const char* value) { m_columnNameHasBeenSet = true; m_columnName.assign(value); } /** *Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline AggregationConstraint& WithColumnName(const Aws::String& value) { SetColumnName(value); return *this;} /** *Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline AggregationConstraint& WithColumnName(Aws::String&& value) { SetColumnName(std::move(value)); return *this;} /** *Column in aggregation constraint for which there must be a minimum number of * distinct values in an output row for it to be in the query output.
*/ inline AggregationConstraint& WithColumnName(const char* value) { SetColumnName(value); return *this;} /** *The minimum number of distinct values that an output row must be an * aggregation of. Minimum threshold of distinct values for a specified column that * must exist in an output row for it to be in the query output.
*/ inline int GetMinimum() const{ return m_minimum; } /** *The minimum number of distinct values that an output row must be an * aggregation of. Minimum threshold of distinct values for a specified column that * must exist in an output row for it to be in the query output.
*/ inline bool MinimumHasBeenSet() const { return m_minimumHasBeenSet; } /** *The minimum number of distinct values that an output row must be an * aggregation of. Minimum threshold of distinct values for a specified column that * must exist in an output row for it to be in the query output.
*/ inline void SetMinimum(int value) { m_minimumHasBeenSet = true; m_minimum = value; } /** *The minimum number of distinct values that an output row must be an * aggregation of. Minimum threshold of distinct values for a specified column that * must exist in an output row for it to be in the query output.
*/ inline AggregationConstraint& WithMinimum(int value) { SetMinimum(value); return *this;} /** *The type of aggregation the constraint allows. The only valid value is * currently `COUNT_DISTINCT`.
*/ inline const AggregationType& GetType() const{ return m_type; } /** *The type of aggregation the constraint allows. The only valid value is * currently `COUNT_DISTINCT`.
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *The type of aggregation the constraint allows. The only valid value is * currently `COUNT_DISTINCT`.
*/ inline void SetType(const AggregationType& value) { m_typeHasBeenSet = true; m_type = value; } /** *The type of aggregation the constraint allows. The only valid value is * currently `COUNT_DISTINCT`.
*/ inline void SetType(AggregationType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *The type of aggregation the constraint allows. The only valid value is * currently `COUNT_DISTINCT`.
*/ inline AggregationConstraint& WithType(const AggregationType& value) { SetType(value); return *this;} /** *The type of aggregation the constraint allows. The only valid value is * currently `COUNT_DISTINCT`.
*/ inline AggregationConstraint& WithType(AggregationType&& value) { SetType(std::move(value)); return *this;} private: Aws::String m_columnName; bool m_columnNameHasBeenSet = false; int m_minimum; bool m_minimumHasBeenSet = false; AggregationType m_type; bool m_typeHasBeenSet = false; }; } // namespace Model } // namespace CleanRooms } // namespace Aws