Como olhar para uma coisa específica dentro de uma tabela com postgres/nodejs

0

Pergunta

Atualmente estou usando o postgres, acessando-o através de um servidor de nó.

Eu estou me sentindo preso em como eu iria procurar por um termo específico dentro de uma tabela, a fim de fazer uma mudança. Eu sei que eu posso SELECIONAR determinados itens, mas eu não sei como procurar itens.

dizem que minha mesa é:

animais fofinho assustador
Médio Cão sim nenhum
Cão De Pequeno Porte sim nenhum
Fofo Cão sim nenhum
Cachorro Grande sim sim
O Grande Gato nenhum sim
Pequenos Peixes nenhum nenhum

De repente, eu fico mordido por um cão, e agora eu quero mudar tudo, contém "cão|Cachorro' assustador: sim.

Eu realmente não consigo encontrar qualquer bons recursos para criar a função. Talvez eu tenha esquecido algo.

Agora eu estou usando SELECT simples, como esta:

app.get('/update/:type', (req, res) => {
  pool.query("SELECT animal FROM petlist WHERE scary = 'no' AND animal = $1",[req.params.client],
   (error, results) => {
    if (error) {
      console.log("I selected dog, but I can't see the specific types of dog!")
      throw error
      }
    console.log(results.rows);
    res.status(200).json(results.rows)
  })
});
javascript node.js postgresql sql
2021-11-24 02:38:38
1

Melhor resposta

2

Eu não sei o seu obscurification idioma (nodejs), mas o Postgres predicado você está procurando seria ilike ou em caso de conversão da coluna animal. Então,

select animal 
  from petlist 
 where scary = 'no' 
   and animal ilike '%dog'; 

-- or if nodejs complains about ilike then 
select animal 
  from petlist 
 where scary = 'no' 
   and lower(animal) like '%dog'; 

por isso, talvez algo como:

app.get('/update/:type', (req, res) => {
  pool.query("SELECT animal FROM petlist WHERE scary = 'no' AND animal ILIKE $1,[req.params.client],
   (error, results) => {
    if (error) {
      console.log("I selected dog, but I can't see the specific types of dog!")
      throw error
      }
    console.log(results.rows);
    res.status(200).json(results.rows)
  })
});

com req.params.cliente é definido como a seqüência de caracteres %do cão.

2021-11-24 23:06:34

Isso é fantástico! Muito obrigado, eu não sabia sobre ILIKE. Foi um pouco de dor para obter nodejs para passar o termo correto com os apóstrofos e porcentagem de marcas, mas eu chegou lá e ele funciona perfeitamente. Obrigado novamente!
SGPascoe

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................