Exemplo 01:
Antes de utilizar a cláusula Where para consultar ou buscar os dados de uma matriz, devemos ter alguma coluna do tipo Array em uma tabela de banco de dados. Para isso, precisamos criar uma tabela em nosso banco de dados primeiro. Então, abra a ferramenta de consulta do PostgreSQL pgadmin, tocando no ícone da ferramenta de consulta. Use o comando Create Table mostrado na imagem abaixo para gerar uma nova tabela vazia chamada "Teste" no banco de dados com três colunas. O ID da coluna é do tipo "int", o nome é do tipo "texto" e as marcas da coluna são de matriz do tipo inteiro. Na execução deste comando com o ícone "Run" da barra de tarefas, a tabela foi criada conforme a mensagem de sucesso.
Para consultar dados de matriz com a cláusula onde, devemos ter alguns dados em uma coluna do tipo de matriz. Portanto, usamos a inserção na instrução para adicionar dados nas três colunas da tabela "teste". Para adicionar dados em uma coluna do tipo de matriz “Marcas”, precisamos usar a matriz de palavras -chave com dados em seus colchetes, conforme exibido. Inserimos um total de 5 registros nesta tabela de uma só vez usando o ícone "Run" da barra de tarefas acima. Os registros foram inseridos com sucesso.
Vamos executar a instrução SELECT de PostgreSQL com o personagem "*" para buscar todos os registros da tabela "Teste". Ao executar a consulta selecionada, temos todas as três colunas com todos os 5 registros. Você pode ver que a coluna “Marks” tem os dados inteiros do tipo de matriz.
Antes de usar a cláusula WHERE na consulta selecionada, vamos dar uma olhada na consulta simples para buscar registros específicos da coluna do tipo de matriz. Então, estamos usando a instrução selecionada para buscar ID, nome e índice 2 valores da coluna “Marcas” de uma tabela “teste”. Temos que especificar o índice dentro dos colchetes, juntamente com o nome de uma coluna, eu.e. Marcas [2]. Recebemos o resultado abaixo da mascate na execução deste comando através do botão "Executar". Você pode ver que todos os registros da coluna ID e Name foram exibidos. Por outro lado, a coluna “Marks” foi exibida com os únicos registros em seu segundo local ou índice 2 dentro da tabela “teste”.
Vamos usar a cláusula WHERE em nossa consulta para buscar registros específicos da tabela "teste". Então, estamos usando a instrução SELECT na ferramenta de consulta para buscar os únicos registros para identificação, nome e marcas no índice 2 do teste da tabela. A cláusula WHERE foi usada como condição para verificar os registros da coluna “Marcas”, onde o índice 2 tem um valor igual a 40 ou mais de 40. Depois de executar esta instrução, temos apenas 2 registros da tabela "teste", onde o valor no índice 2 da coluna "Marks" tem um valor de 40 ou mais do que o exibido na imagem abaixo.
Para escolher todos os registros da tabela com a mesma condição, precisamos usar o caractere "*" na instrução SELECT. Este comando mostrará os três itens de uma única matriz para os dois registros do teste da tabela.
Exemplo 02:
Vamos dar uma olhada em outro exemplo de PostgreSQL para usar a cláusula WHERE para buscar registros específicos em diferentes locais. Para isso, precisamos criar uma nova tabela chamada "novo" executando a instrução Create Table sobre a ferramenta de consulta com o ícone "Run". Temos adicionado um total de 3 colunas a ele. A primeira coluna, "ID" é do tipo inteiro simples, a segunda coluna "nome" é da matriz do tipo de texto e a última coluna "Salário" é de tipo de matriz inteira bidimensional. Após sua execução, a tabela foi criada com sucesso.
Vamos inserir alguns registros na tabela recém -gerada "nova" que está vazia atualmente. Para isso, precisamos usar a inserção na instrução dentro da ferramenta de consulta para adicionar valores no ID, nome e coluna de salário. Você pode ver isso, para adicionar valores na coluna
“Nome” do tipo de matriz, temos que usar o comando invertido e suportes encaracolados únicos para manter valores de tipos de string. Para adicionar registros na coluna da matriz bidimensional “Salário”, precisávamos usar as vírgulas invertidas únicas ao redor dos colchetes encaracolados. Enquanto dentro dos colchetes encaracolados, temos que usar mais dois pares ou suportes encaracolados para adicionar registros. Adicionamos 5 registros no total.
Vamos ver todos os registros da tabela "Novo" usando a instrução Selecionar na área de consulta com o caractere "*". Temos a tabela "nova" em forma completa como abaixo.
Vamos buscar os registros da coluna do tipo de matriz da tabela "novo" usando a cláusula WHERE. Então, decidimos buscar todos os registros desta tabela em que o índice "2" da coluna "nome" não tem valor, eu.e. '“”' '.Para conseguir isso, precisamos usar o índice 2 em colchetes, juntamente com o nome de uma coluna "nome" utilizando a cláusula onde. A instrução foi mostrada na imagem. Depois de executá -lo, temos apenas 2 registros para esta condição.
Isso se tratava de usar a cláusula WHERE em uma coluna de matriz unidimensional para buscar registros. Vamos usar a cláusula WHERE na coluna Bidimensional Array, eu.e. Salário. Então, decidimos buscar e exibir todos os registros da tabela "novos" usando o personagem "*". Usamos a condição de onde apenas obteve as linhas de tabela para as quais o índice 2 da dimensão 1, i.e. [1] [2] Para a coluna “Salário” tem um valor maior que 15000. Ao executar esta consulta, temos 3 registros com a coluna salarial 1ª dimensão tem valor maior que 15000 no índice 2.
Vamos pegar outra ilustração para usar a cláusula WHERE na coluna “Salário” ou tipo de matriz. Desta vez, aplicaremos a condição na segunda dimensão da coluna "Salário" e seu respectivo segundo índice, I I.e. [2] [2]. Desta vez, temos apenas 2 registros para a coluna "Salário", onde o índice 2 de sua segunda dimensão tem um valor menor que 27000.
Conclusão:
Então isso foi tudo sobre o uso da cláusula WHERE na tabela PostGresql para buscar registros de acordo com os valores da coluna do tipo Array. Discutimos dois tipos de uma matriz para usar onde a cláusula neles, eu.e. 1 dimensional e bidimensional. Todos os registros foram buscados usando a indexação de matrizes.