sql >> Database teknologi >  >> RDS >> Mysql

MySQL SELECT-sætning, hvor værdien er i array

Du kan bruge FIND_IN_SET

SELECT * FROM tbl_fruits 
WHERE find_in_set('$fruit', fruit)

Men du burde faktisk hellere ændre dit borddesign.

Gem aldrig flere værdier i en enkelt kolonne!

Et bedre borddesign ville være

fruits table
------------
id    name
1     melon
2     orange
3     apple
...


products table
-------------------
id    name   price
1     P1     1.50
2     P2     2.99
3     P3     0.99


product_fruits table
--------------------
product_id   fruit_id
1            1
1            2
2            2
3            1

Det er en klassisk mange til mange-relation (m til n).



  1. Indsætter NEW.* fra en generisk trigger ved hjælp af EXECUTE i PL/pgsql

  2. SQL Self Join

  3. Variabel i SQL -> FEJL PLS-00103:Opstod symbolet SELECT

  4. Sådan opdaterer du eksisterende data med SQLite