sql >> Database >  >> RDS >> Database

Hoe tekst in kleine letters in SQL te veranderen

Probleem:

Je wilt wat tekst in kleine letters in SQL veranderen.

Voorbeeld:

Onze database heeft een tabel met de naam item met gegevens in de volgende kolommen:id , code , en wood_type_used . De zaak is inconsistent in de gegevens in de wood_type_used kolom. We willen graag dat alle houtsoorten in kleine letters worden weergegeven.

id code wood_type_used
1 000237PSH Dennenboom
2 000115MCH MAHONIE
3 000073BTB berk
4 00068WBD wAlnUt
5 00055BSH Berk

Oplossing:

We gebruiken de LOWER() functie:

SELECT
    code,
LOWER(wood_type_used)
FROM item;

De zoekopdracht retourneert de items met houtsoorten geschreven in kleine letters:

code wood_type_used
000237PSH grenen
000115MCH mahonie
000073BTB berk
00068WBD walnoot
00055BSH berk

Discussie:

Wanneer u tekstgegevens uit uw SQL-database in kleine letters wilt weergeven, gebruikt u de LOWER() functie. Deze functie neemt als argument een string of de naam van een kolom waarvan de tekstwaarden in kleine letters moeten worden weergegeven. Het retourneert een versie van de originele tekstgegevens waarin elke hoofdletter wordt vervangen door het equivalent in kleine letters, en de rest van de tekens blijven ongewijzigd.

Het op een uniforme manier weergeven van tekst is echter niet de enige toepassing van de LOWER() functie. Mogelijk vindt u het ook nuttig bij niet-hoofdlettergevoelige zoekopdrachten, dat wil zeggen zoekopdrachten waarbij het niet relevant is hoe de tekstgegevens die u zoekt oorspronkelijk in hoofdletters worden weergegeven.

In onze voorbeeldtabel hierboven zou je bijvoorbeeld alle items van berkenhout willen vinden. Aangezien de waarden van de houtsoort niet consistent in een kast staan, is het eenvoudig zoeken naar alle rijen met 'birch ’ in de wood_type_used kolom zou slechts één rij retourneren, ook al zijn twee van de vermelde producten duidelijk gemaakt van berken. Dit is waar LOWER() komt binnen:

SELECT *
FROM item
WHERE LOWER(wood_type_used) = ‘birch’;

Een dergelijke zoekopdracht retourneert alle rijen met een of andere vorm van 'berken'-tekenreeks in de wood_type_used kolom, ongeacht hoe de waarden in de oorspronkelijke gegevens worden weergegeven. Vergeet niet om de tekst die u zoekt ook in kleine letters te schrijven.


  1. Hoe kan ik afbeeldingen opslaan en ophalen uit een MySQL-database met behulp van PHP?

  2. Hoe de volgende auto-increment-id in mysql te krijgen

  3. SQL Left Join

  4. NULL Complexiteiten – Deel 2