sql >> Databasteknik >  >> RDS >> Mysql

MYSQL sökfältsmetod

Så, om vi antar att kolumnerna name och colors är de enda kolumner vi behöver söka igenom, skulle jag göra följande (naiv lösning men kommer att fungera bra om din DB inte har miljontals rader och du inte har tusentals kunder som söker samtidigt).

Skapa först en vy

CREATE VIEW SearchHere AS
SELECT item_id, CONCAT(name, ' ', colors) AS FullDescription
FROM table

Jag vet inte namnet på tabellen i din skärmdump, så jag använde table som dess namn.

Nu, om en användare söker efter adult red pants du kan skicka en fråga

SELECT item_id
FROM SearchHere
WHERE FullDescription LIKE '%adult%'
AND FullDescription LIKE '%red%'
AND FullDescription LIKE '%pants%'

Naturligtvis skulle du behöva generera frågan i farten, men det är inget problem. Du kan leka med AND eller OR och placera mellanslag mellan jokersymbolen % och söktermen. Förmodligen skulle du också vilja göra vyn på ett mer sofistikerat sätt, t.ex. göra mer än bara CONCAT .



  1. Hur kan jag infoga realtid av en händelse i databasen med php mysqli?

  2. PreparedStatement , CallableStatement och prestationsöverväganden

  3. Hur kan du ta bort eller ändra cakephp-sidantion count-frågan på postgresql?

  4. Lösning för ORA-00997:olaglig användning av LONG datatyp