A afirmação em que 1 = 1 em SQL significa verdadeiro. É a mesma operação que executar a instrução SELECT sem a cláusula onde.
Você pode perguntar: qual é o objetivo da cláusula em que 1 = 1?
Na maioria dos casos, você só precisará usar esta cláusula quando precisar criar instruções SQL dinâmicas. Depois de aplicar a cláusula Where 1 = 1, todas as declarações subsequentes depois de começar com a palavra -chave 'e'.
É mais como uma maneira de incluir declarações SQL exploratórias de uma maneira muito preguiçosa e conveniente. Ele também permite que você comente as consultas de uma maneira simples.
Considere um exemplo em que você está adivinhando um id de uma coluna. Supondo que você não tenha certeza se esse ID existe no banco de dados, você pode usar algo como 1 = 1 para retornar todas as linhas, mesmo que o ID de destino não esteja no banco de dados.
Selecione * dos usuários onde id = 10 ou 1 = 1;A consulta acima usa uma declaração ou. Portanto, apenas uma das condições precisa ser verdadeira para a consulta funcionar.
Mesmo se não houver usuário com um ID de 10, o 1 = 1 sempre será avaliado como verdadeiro, e a consulta buscará todas as linhas na tabela especificada.
Execução de consulta
Se você não está procurando informações sobre bancos de dados, raramente precisará se preocupar com a cláusula onde 1 = 1.
No entanto, você pode perguntar se a cláusula melhora o tempo de execução.
A resposta é não.
Definir a cláusula em que 1 = 1 é o mesmo que executar a consulta sem uma cláusula onde. A maioria dos mecanismos de banco de dados removerá a cláusula antes de executar a instrução.
Conclusão
Este pequeno artigo descreve o que o SQL onde 1 = 1 cláusula e por que você pode usá -lo.