- 1 1. Pangkalahatang-ideya ng MySQL LIKE
- 2 2. Pangunahing Sintaks ng MySQL LIKE
- 3 3. Mga Wildcard na Ginagamit sa LIKE
- 4 4. Mga Teknik sa Pattern Matching
- 5 5. Pag-escape ng mga Espesyal na Karakter sa LIKE
- 6 6. Mga Advanced na Paggamit ng LIKE
- 7 7. Mga Pinakamainam na Kasanayan sa Paggamit ng LIKE
- 8 8. Karaniwang Paggamit ng MySQL LIKE
- 9 9. Buod
- 10 10. Madalas Itanong
1. Pangkalahatang-ideya ng MySQL LIKE
Ang MySQL LIKE operator ay ginagamit upang maghanap ng data sa isang database na tumutugma sa isang tiyak na pattern. Ginagamit ang LIKE sa SQL WHERE clause at nagbibigay-daan sa iyo na magtakda ng mga kondisyon sa paghahanap batay sa bahagi o buong string. Halimbawa, ito ay kapaki-pakinabang para sa paghahanap ng “mga pangalan na nagsisimula sa isang tiyak na letra” o “mga code ng produkto na naglalaman ng tiyak na mga karakter.”
Mga Gamit ng Operator na LIKE
- Paghahanap ng bahagyang tugma
- Paghahanap ng tiyak na pattern
- Pag-filter ng data
Dahil ang operator na ito ay dalubhasa sa pattern matching, ito ay mahalaga para sa epektibong paghahanap at pag-manipula ng data sa isang database.
2. Pangunahing Sintaks ng MySQL LIKE
Ang pangunahing sintaks para sa paggamit ng LIKE operator sa MySQL ay ang mga sumusunod:
SELECT column_name FROM table_name WHERE column_name LIKE 'pattern';
Mga Halimbawa ng Paggamit ng LIKE
- Maghanap ng data na nagsisimula sa isang tiyak na karakter
SELECT * FROM users WHERE name LIKE 'A%'; - Maghanap ng data na naglalaman ng isang tiyak na string
SELECT * FROM products WHERE product_code LIKE '%123%';
Ang LIKE operator ay kadalasang ginagamit kasama ang mga wildcard tulad ng % at _ upang magbigay-daan sa mas flexible na paghahanap.
3. Mga Wildcard na Ginagamit sa LIKE
Gumagamit ang LIKE operator ng mga wildcard upang tukuyin ang mga pattern ng paghahanap. Sinusuportahan ng MySQL ang dalawang pangunahing wildcard:
Wildcard na %
- Tumutugma sa anumang sunod-sunod ng mga karakter (kasama ang zero na karakter)
SELECT * FROM users WHERE email LIKE '%@example.com';Ang halimbawang ito ay kumukuha ng lahat ng email address na nagtatapos sa@example.com.
Wildcard na _
- Tumutugma sa anumang isang karakter
SELECT * FROM products WHERE product_code LIKE '_A%';Ang halimbawang ito ay kumukuha ng lahat ng product code kung saan ang ikalawang karakter ayA.
Sa pamamagitan ng tamang paggamit ng mga wildcard, maaari mong epektibong i-filter ang data sa iyong database.
4. Mga Teknik sa Pattern Matching
Ang paggamit ng LIKE operator kasama ang mga wildcard ay nagbibigay-daan sa iba’t ibang pamamaraan ng pattern-matching.
Nagsisimula Sa
- Maghanap ng data kung saan ang isang string ay nagsisimula sa isang tiyak na pattern
SELECT * FROM customers WHERE name LIKE 'John%';Ito ay nagahanap ng lahat ng pangalan ng customer na nagsisimula saJohn.
Nagtatapos Sa
- Maghanap ng data kung saan ang isang string ay nagtatapos sa isang tiyak na pattern
SELECT * FROM files WHERE filename LIKE '%.pdf';Ito ay nagahanap ng lahat ng filename na nagtatapos sa.pdf.
Naglalaman
- Maghanap ng data na naglalaman ng isang tiyak na pattern
SELECT * FROM documents WHERE content LIKE '%MySQL%';Ito ay nagahanap ng lahat ng dokumento na naglalaman ng string naMySQL.
5. Pag-escape ng mga Espesyal na Karakter sa LIKE
Sa LIKE operator, ang % at _ ay may espesyal na kahulugan bilang mga wildcard. Upang maghanap ng mga ito bilang normal na karakter, kailangan mong gumamit ng escape character.
Paano Mag-escape
- Halimbawa ng paghahanap gamit ang escape character
SELECT * FROM filenames WHERE filename LIKE 'file_%' ESCAPE '';Ang query na ito ay naghahanap ng lahat ng filename na nagsisimula safile_. Karaniwan, ang_ay itinuturing na wildcard, ngunit sa paggamit ng escape character, ito ay itinuturing na normal na karakter.
6. Mga Advanced na Paggamit ng LIKE
Ang LIKE operator ay maaaring pagsamahin sa iba pang mga pahayag ng SQL para sa mas advanced na paghahanap.
Pagsasama sa JOIN
- Maghanap ng kaugnay na data sa pagitan ng mga talahanayan
SELECT orders.id, customers.name FROM orders JOIN customers ON orders.customer_id = customers.id WHERE customers.name LIKE '%Smith%';Ang query na ito ay kumukuha ng mga order mula sa mga customer na ang mga pangalan ay naglalaman ngSmith.
Pag-negate gamit ang NOT LIKE
- Maghanap ng data na hindi tumutugma sa isang tiyak na pattern
SELECT * FROM emails WHERE address NOT LIKE '%@spam.com';Ito ay kumukuha ng lahat ng email address na hindi nagtatapos sa@spam.com.

7. Mga Pinakamainam na Kasanayan sa Paggamit ng LIKE
May ilang mga punto na dapat tandaan at mga pinakamainam na kasanayan kapag ginagamit ang LIKE operator.
Epekto sa Performance
- Ang paggamit ng
LIKEoperator sa malalaking dataset ay maaaring magpabagal ng performance. Lalo na, ang pagsisimula ng pattern sa%ay pumipigil sa paggamit ng index, na maaaring magdulot ng mas mabagal na pagtakbo ng mga query.
Paggamit ng Angkop na Mga Index
- Isaalang-alang ang paglikha ng mga index kung kinakailangan upang mapabuti ang performance.
8. Karaniwang Paggamit ng MySQL LIKE
Ang MySQL LIKE operator ay ginagamit sa iba’t ibang sitwasyon tulad ng:
Paghahanap ng Customer
- Kapag naghahanap batay sa mga pangalan ng customer o mga email address.
Paghahanap ng Product Code
- Kapag naghahanap ng mga produkto batay sa bahagi ng product code.
9. Buod
Ang LIKE operator ay isang makapangyarihang tool para sa pattern‑matching sa MySQL. Saklaw ng artikulong ito ang lahat mula sa pangunahing syntax hanggang sa advanced na paggamit at pag‑optimize ng performance. Gamitin ang LIKE operator nang epektibo para sa mahusay na paghahanap at pag‑manipula ng database.
10. Madalas Itanong
Q1: Ano ang pagkakaiba ng LIKE at =?
A1: Ang = ay ginagamit para sa eksaktong tugma, samantalang ang LIKE ay ginagamit para sa bahagi ng tugma at pattern matching.
Q2: Ang LIKE ba ay case-sensitive?
A2: Sa default, ang MySQL LIKE ay case‑insensitive. Gayunpaman, maaari mo itong gawing case‑sensitive sa pamamagitan ng paggamit ng keyword na BINARY.
Q3: Maaari bang gamitin ang LIKE operator sa mga numero?
A3: Karaniwan itong ginagamit sa mga string, ngunit maaari itong gamitin sa mga numero kung ito ay naka-imbak bilang mga string.


