Skip to content

NamedQuery ​

The NamedQuery resource lets you manage AWS Athena NamedQuerys for executing SQL queries against your data in Amazon S3.

Minimal Example ​

Create a basic NamedQuery with required properties and a common optional property.

ts
import AWS from "alchemy/aws/control";

const namedQuery = await AWS.Athena.NamedQuery("basicNamedQuery", {
  QueryString: "SELECT * FROM my_database.my_table LIMIT 10;",
  Database: "my_database",
  WorkGroup: "primary" // Optional: Specify the workgroup
});

Advanced Configuration ​

Configure a NamedQuery with a description and a custom name.

ts
const advancedNamedQuery = await AWS.Athena.NamedQuery("advancedNamedQuery", {
  QueryString: "SELECT COUNT(*) FROM my_database.my_table WHERE status = 'active';",
  Database: "my_database",
  Description: "Counts active entries in my_table",
  Name: "CountActiveEntries" // Optional: Provide a custom name
});

Adoption of Existing NamedQuery ​

Adopt an existing NamedQuery if it already exists, allowing for updates without failure.

ts
const adoptedNamedQuery = await AWS.Athena.NamedQuery("adoptedNamedQuery", {
  QueryString: "SELECT * FROM my_database.another_table;",
  Database: "my_database",
  adopt: true // If true, adopt existing resource instead of failing when resource already exists
});