Sql - utilizarea substringului funcției - sql, substring, sql-query - produse software

Funcția SQL SUBSTRING poate fi folosită în aplicațiile Delphi care lucrează cu interogări la SQL local, dar nu este acceptată atunci când se lucrează cu tabele InterBase (IB) și Local InterBase Server (LIBS). Mai jos este sintaxa funcției SUBSTRING, exemple de utilizare a acesteia în interogările SQL locale și o alternativă pentru returnarea acelorași rezultate în tabelele IB / LIBS.

Sintaxa din SUBSTRING:

- numele coloanei din tabelul din care ar trebui să se obțină subrubrica.

Un loc în valoarea coloanei din care se extrage substringul.

lungimea substringului extras.

Funcția SUBSTRING din exemplul de mai jos va returna al doilea, al treilea și al patrulea caractere din coloana denumită COMPANY:

Funcția SUBSTRING poate fi de asemenea utilizată pentru o listă de câmpuri dintr-o interogare SELECT, unde cuvântul cheie WHERE permite compararea unei valori cu un anumit set de coloane. Funcția SUBSTRING poate fi utilizată numai cu coloane de tip String (în limba SQL, tip CHAR). Aici este o funcție substring exemplu, utilizând lista de coloane din SELECT-interogare (folosind tabelul demo Paradox CUSTOMER.DB):

Această interogare SQL preia primele trei caractere din coloana COMPANIE, care este returnată ca o coloană calculată numită SS. Iată un exemplu de funcție SUBSTRING utilizată în interogarea SQL cu cuvântul cheie WHERE (utilizați aceeași tabelă):

Această interogare va returna toate rândurile din tabel, unde al doilea și al treilea caractere din coloana COMPANY sunt "ar".

Deoarece funcția SUBSTRING nu este acceptată în bazele de date IB și LIBS, operațiile cu substringuri cu o listă de coloane din interogare nu sunt posibile (excepție: IB poate lucra cu substringuri prin funcții definite de utilizator, funcții definite de utilizator). Dar cu ajutorul operatorului LIKE și a marcatorilor de substituție a simbolurilor, este posibil să lucrați cu un substring în cazul WHERE. Iată un exemplu pe baza tabelului EMPLOYEE (în baza de date EMPLOYEE.GDB):

Această interogare SQL va returna toate rândurile din tabel, unde al doilea și al treilea caractere din coloana LAST_NAME sunt "an", a se vedea exemplul anterior bazat pe tabelul Paradox. Bazele de date IB și LIBS pentru a efectua o comparație substring în operatorul de interogare WHERE necesită această metodă (și nu poate utiliza funcția SUBSTRING), în timp ce tabelele Paradox și dBASE (de exemplu, SQL local) pot utiliza orice metodă.