Comment chercher une chose à l'intérieur d'un tableau avec postgres/nodejs

0

La question

Je suis actuellement à l'aide postgres, accéder au moyen d'un nœud de serveur.

Je me sens coincé sur comment je pourrais rechercher un terme dans un tableau afin de faire un changement. Je sais que je peux SÉLECTIONNER certains éléments, mais je ne sais pas comment faire une recherche dans les articles.

dire que ma table est la suivante:

animal peluche effrayant
Chien Moyen oui pas de
Petit Chien oui pas de
Moelleux Chien oui pas de
Grand Chien oui oui
Big Cat pas de oui
Les Petits Poissons pas de pas de

Soudain, je reçois mordu par un chien, et maintenant je veux tout changer contenant 'chien|Chien" effrayant: oui.

Je ne peux pas vraiment trouver une bonne ressources pour créer la fonction. Peut-être que j'ai oublié quelque chose.

Je suis aujourd'hui à l'aide de SELECT simple comme ça:

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

La meilleure réponse

2

Je ne connais pas votre obscurification langue (nodejs), mais la Postgres prédicat vous êtes à la recherche pour serait soit ilike ou en cas de conversion de la colonne animal. Donc

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'; 

donc peut-être quelque chose comme:

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)
  })
});

avec req.params.client est défini à la chaîne de caractères %chien.

2021-11-24 23:06:34

C'est fantastique! Merci beaucoup, je ne connaissais pas ILIKE. C'était un peu difficile à obtenir nodejs pour passer le bon terme avec les apostrophes et pourcentage marques, mais j'y suis arrivé par la suite et il fonctionne parfaitement. Merci encore une fois!
SGPascoe

Dans d'autres langues

Cette page est dans d'autres langues

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