Editor PartiQL (SQL)
Escreva PartiQL compatível com SQL usando autocompletar sensível ao contexto, templates de instruções gerados a partir do schema da sua tabela, formatação com um clique e instruções de escrita protegidas.
O editor
Mude o painel Filters para SQL. O editor já vem preenchido com SELECT * FROM "<table>" para a tabela atual, cresce conforme você digita e destaca palavras-chave, funções, strings, identificadores entre aspas, números e comentários --. A instrução e o último SELECT bem-sucedido ficam salvos por aba.
Acima do editor, uma barra de ferramentas oferece:
- 📋 Templates ▾ — insere uma instrução montada a partir das chaves e dos índices da tabela.
- ✨ Format — palavras-chave em maiúsculas, funções em minúsculas, uma cláusula por linha e AND/OR indentados.
- Clear — esvazia o editor.
- Docs ↗ — abre a referência de PartiQL da AWS no seu navegador.
Um indicador ao lado do editor mostra o tipo de instrução que você escreveu, como “SELECT · read” (leitura) ou “INSERT · writes data” (grava dados), para que você sempre saiba se o Execute vai alterar a tabela.
SELECT * FROM "my-table" WHERE "user-id" = 'u1'. Valores de string usam aspas simples.Autocompletar
As sugestões aparecem enquanto você digita e levam em conta em que ponto da instrução você está. Navegue com ↑ e ↓, aceite com ⇥ ou ↵ e descarte com Esc. Pressionar espaço depois de uma palavra-gatilho mostra as opções padrão para aquela posição.
| Depois de… | Você recebe |
|---|---|
FROM, UPDATE, INTO | Nomes de tabelas da conexão, entre aspas duplas |
SELECT, uma vírgula na lista do select, SET, BY | Atributos: primeiro os atributos de chave com seu tipo (S/N/B), depois os atributos encontrados nos itens carregados |
WHERE, AND, OR, NOT | Atributos e funções: attribute_exists, attribute_not_exists, begins_with, contains, size, attribute_type |
| Um atributo em uma condição | Operadores: =, <>, !=, >, <, >=, <=, BETWEEN, IN, LIKE, CONTAINS, IS NULL, IS NOT NULL, IS MISSING, IS NOT MISSING |
| Em qualquer outro lugar | Palavras-chave como SELECT, INSERT INTO, UPDATE, DELETE FROM, WHERE, ORDER BY, LIMIT |
Cada sugestão traz um ícone e um selo de tipo (keyword, table, pk/sk, attr, fn, op) e destaca a parte que você já digitou. São exibidas até 14 sugestões por vez.
Templates
Os templates são gerados a partir do schema da tabela aberta, então os nomes das chaves e dos índices já vêm corretos. Os valores de exemplo ficam selecionados após a inserção, para que você comece a digitar imediatamente.
-- Select all
SELECT * FROM "orders"
-- By partition key
SELECT * FROM "orders" WHERE "customerId" = 'value'
-- Sort key prefix
SELECT * FROM "orders" WHERE "customerId" = 'value' AND begins_with("orderDate", 'value')
-- Sort key range
SELECT * FROM "orders" WHERE "customerId" = 'value' AND "orderDate" BETWEEN 'from' AND 'to'
-- Filter: contains / attribute exists / value in list / pick columns
SELECT * FROM "orders" WHERE contains("tags", 'value')
SELECT * FROM "orders" WHERE attribute_exists("shippedAt")
SELECT * FROM "orders" WHERE "status" IN ['paid', 'shipped']
SELECT "customerId", "orderDate", "total" FROM "orders"Executando instruções
Pressione ⌘+↵ ou clique em ▶ Execute. Uma instrução é enviada por execução via ExecuteStatement, com relatório de capacidade consumida. Os resultados aparecem nas mesmas visualizações Table, JSON e Chart, com paginação guiada pelo next token do DynamoDB. A execução é adicionada ao histórico de consultas (Query History).
Instruções de escrita recebem uma proteção extra. Antes de executar um INSERT, UPDATE ou DELETE, o DynamoOps pede que você confirme que a instrução altera dados na tabela indicada. Depois que ela é concluída, um aviso informa as WCU consumidas e o último SELECT da aba é executado de novo automaticamente, para que a grade reflita a alteração.
Exemplos
-- Pedidos mais recentes de um cliente, do mais novo ao mais antigo
SELECT * FROM "orders"
WHERE "customerId" = 'cus_123'
ORDER BY "orderDate" DESC
-- Itens sem um atributo
SELECT "userId", "email" FROM "users"
WHERE "verifiedAt" IS MISSING
-- Corrigir um valor com uma condição
UPDATE "users"
SET "status" = 'active'
WHERE "userId" = 'usr_001' AND "status" = 'pending'