Pieprasījumā ir 1c. Līdzīgi vaicājuma nosacījumiem. Piemērs: atlasiet produktus, kuru nosaukumi beidzas ar ciparu

LĪDZĪGS operators vaicājumā pārbauda virkņu vērtības no tabulām, vai tās ir līdzības ar modeli.
To lieto šādi: pārbaudāmā virkne tiek novietota pa kreisi no šī operatora, bet raksts ir novietots pa labi.

Pēc pārbaudes tas attiecīgi atgriež True vai False, tas tiek aktīvi izmantots apstākļos.
Veidnes izveidošanai tiek izmantotas šādas pakalpojumu rakstzīmes:

  • % (procenti) - secība, kas satur jebkuru skaitu patvaļīgu rakstzīmju
  • _ (pasvītrojums) - viena patvaļīga rakstzīme
  • […] (viena vai vairākas rakstzīmes kvadrātiekavās) — jebkura atsevišķa rakstzīme, kas norādīta kvadrātiekavās
    Papildus dažādiem simboliem varat izmantot arī diapazonus, piemēram, a-z(A-z), kas nozīmē diapazonā iekļauta patvaļīga simbola klātbūtni, ieskaitot diapazona galus.
  • [^...] (kvadrātiekavās nolieguma zīme, kam seko viena vai vairākas rakstzīmes) — jebkura atsevišķa rakstzīme, kas nav norādīta aiz nolieguma zīmes

Pārējie simboli tiek izmantoti paredzētajam mērķim.
Ja ir nepieciešams pārsūtīt kādu no iepriekš minētajām pakalpojumu rakstzīmēm kā simbolu, tad pirms tā ir jānorāda<Спецсимвол>. Es pats<Спецсимвол>(jebkura piemērota rakstzīme) ir definēts tajā pašā paziņojumā pēc atslēgvārda SPECIAL CHARACTER.
Piemēram, raksts “%ABV[abvg]\_abv%” ĪPAŠĀ RAKSTUVE “\” nozīmē apakšvirkni, kas sastāv no rakstzīmju secības:
burti A; burti B; burti B; viens cipars; viens no burtiem a, b, c vai d; pasvītrojums; burti a; burti b; burti v.
Turklāt pirms šīs secības var būt patvaļīga rakstzīmju kopa.

Procedūra Atlasiet līgumu, kas satur nosaukumuText(mText)
//Pieprasījumā izmantosim tādu veidni kā "%" + mText + "%" Pieprasījums = Jauns pieprasījums; Query.SetParameter("Nosaukums", "%" + Teksts + "%"); Request.Text = "SELECT | Līgumi. Saite, | Līgumi. Īpašnieks | NO | Katalogs. Darījumu partneru līgumi AS Līgumi | | KUR | Līgumi. Vārds LĪDZĪGI & Vārds"; Rezultāts = Query.Run(); Atlase = Result.Select(); Report("Līgumiem, kuru nosaukumā ir: " + mText + ", ir šādi darījuma partneri"); Kaut atlase.Nākamais() Cikla pārskats("Darījuma partneris: " + Atlase.Īpašnieks + "; Līgums: " + Atlase. Saite EndIf; EndProcedure

Šajā rakstā mēs vēlamies ar jums visu apspriest 1C vaicājumu valodas funkcijas, un arī vaicājumu valodas konstrukcijas. Kāda ir atšķirība starp funkciju un dizainu? Funkcija tiek izsaukta ar iekavām un iespējamajiem parametriem tajās, un konstrukcija tiek rakstīta bez iekavām. Neapšaubāmi visas 1C vaicājumu valodas struktūras un funkcijas padarīt datu iegūšanas procesu elastīgu un daudzfunkcionālu. Šīs funkcijas un konstrukcijas attiecas uz vaicājuma laukiem, un dažas attiecas arī uz nosacījumiem.

1C vaicājumu valodas funkcijas

Jo skaidrs apraksts 1C vaicājumu valodas funkcijas ir daudz retāk nekā struktūru apraksti, mēs nolēmām sākt aplūkot funkcijas. Tagad apskatīsim katru atsevišķi, aprakstot tā mērķi, sintaksi un lietošanas piemēru, tātad:

1. Funkcija DATETIME - šī funkcija izveido konstantu lauku ar tipu "Datums".

Sintakse: DATETIME(<Год>,<Месяц>,<День>,<Час>,<Минута>,<Секунда>)

Lietošanas piemērs:

2. Funkcija DATE DIFFERENCE- atgriež starpību starp diviem datumiem vienā no dimensijām (gads, mēnesis, diena, stunda, minūte, sekunde). Mērījums tiek nodots kā parametrs.

Sintakse: DIFFERENCEDATE(<Дата1>, <Дата2>, <Тип>)

Lietošanas piemērs:

Query.Text = "SELECT | DIFFERENCEDATE(DATETIME(2015, 4, 17), DATETIME(2015, 2, 1), DAY) | AS Dienu skaits";

3. Funkcija VALUE- iestata nemainīgu lauku ar iepriekš definētu ierakstu no datu bāzes, jūs varat arī iegūt jebkura veida tukšu saiti.

Sintakse: VALUE(<Имя>)

Lietošanas piemērs:

Request.Text = "SELECT //iepriekš definēts elements | VĒRTĪBA(Directory.Currencies.Dollar) AS dolārs, //tukša saite | VĒRTĪBA(Dokuments.Preču un pakalpojumu saņemšana.EmptyLink) AS kvīts, //pārskaitījuma vērtība | VĒRTĪBA(Pārskaitījums Juridiska fiziska persona) AS Privātpersona, //iepriekš definēts konts VĒRTĪBA(Kontu plāns. Pašuzskaite.Materiāli) AS Konts_10" ;

4. SELECT funkcija- mūsu priekšā ir IF konstrukcijas analogs, kas tiek izmantots kodā, tikai šis tiek izmantots 1C vaicājumos.

Sintakse: IZVĒLE, KAD<Выражение>TAD<Выражение>CITĀDI<Выражение>BEIGAS

Lietošanas piemērs:

Pieprasījums.Teksts = //ja summa ir lielāka par 7500, tad ir jābūt atlaidei 300 rubļu apmērā, //tātad, ja nosacījums tiek aktivizēts, tad funkcija //atgriež Summa - 300 //pretējā gadījumā pieprasījums atgriezīs vienkārši summu "ATLASĪT | IZVĒLĒTIES | KAD TKRkvītis.Summa > 7500 | TAD TKRkvītis.Summa - 300 | CITI TKRkvītis.Summa | BEIGAS KĀ SummaAratlaidi | NO |

5. EXPRESS funkcija- ļauj izteikt konstantu lauku ar noteiktu veidu.

Sintakse: EXPRESS (lauka nosaukums kā tipa nosaukums)

Lietošanas piemērs:

Query.Text = "ATLASĪT DAŽĀDU | Pārdošana.Reģistra numurs, | IZVĒLĒTIES | WHEN Pārdošana. Reģistratūras saites dokuments.Izdevumi | THEN EXPRESS(Pārdošana.Reģistrs kā dokuments.Izdevumi) | ELSE SELECT | WHEN Pārdošana.Reģistras saites dokuments.Ieviešana | THEN EXPRESS(Sales.Registrar AS Document.Implementation) |. END AS Uzkrāšanas reģistrs Pirkumi";

Vai ir vēl kāda iespēja izmantot funkciju EXPRESS jaukta tipa laukos, kur tās rodas? Vienkāršākais piemērs ir jebkura reģistra “reģistrators”. Tātad, kāpēc mums varētu būt nepieciešams kvalificēt veidu reģistratorā? Apskatīsim situāciju, kad no reģistratūras atlasām lauku "Numurs", no kuras tabulas tiks izvēlēts numurs? Pareizā atbilde visiem! Tāpēc, lai mūsu vaicājums darbotos ātri, mums ir jānorāda precīzs veids, izmantojot funkciju EXPRESS

Lietošanas piemērs:

Query.Text = "SELECT | EXPRESS(Nomenclature.Comment AS Line(300)) AS Comment, | EXPRESS(Nomenclature.Sum AS Number(15,2)) AS Sum |FROM | Directory.Nomenclature AS Nomenclature";

6. ISNULL funkcija(alternatīvā pareizrakstība ISNULL) - ja laukam ir NULL tips, tas tiek aizstāts ar funkcijas otro parametru.

Sintakse: ISNULL(<Поле>, <ПодставляемоеЗначение>)

Lietošanas piemērs:

Ņemiet vērā arī to, ka VIENMĒR ieteicams aizstāt veidu NULL ar kādu vērtību, jo salīdzinājums ar tipu NULL vienmēr atgriež FALSE, pat ja jūs salīdzināt NULL ar NULL. Visbiežāk NULL vērtības veidojas tabulu savienošanas rezultātā (visu veidu savienojumi, izņemot iekšējos).

Query.Text = //Atlasīt visu preci un tās atlikumus //ja kādā vienībā nav bilances, tad būs lauks //NULL, kas tiks aizstāts ar vērtību 0 "SELECT | No. Link, | ISNULL (ProductsInStockRemains.InStockRemaining, 0) KĀ Atlikuši |. Katalogs.Nomenklatūra AS Nr. |.KREISĀS DARBĪBAS |

7. REPREZENTĀCIJAS funkcija- ļauj iegūt pieprasījuma lauka attēlojumu.

Sintakse: PERFORMANCE(<НаименованиеПоля>)

Lietošanas piemērs:

Query.Text = "SELECT | REPREZENTĀCIJA(FreeRemainingRemains.Nomenclature) AS Nomenklatūra, | REPREZENTĀCIJA(FreeRemaining.Warehouse) AS Noliktava, | FreeRemainingRemaining.InStockRemaining |FROM |Uzkrāšanas reģistrs.FreeRemainingAS FreeRemaining"

Konstrukcijas 1C vaicājumu valodā

Mēs ar jums apspriedām iepriekš 1C vaicājumu valodas funkcijas, tagad ir laiks apsvērt konstrukcijas 1C vaicājumu valodā, tie ir ne mazāk svarīgi un noderīgi, sāksim.

1. Būvniecība LINK- ir loģisks operators atsauces veida pārbaudei. Visbiežāk sastopams, pārbaudot kompleksa tipa lauku ar noteiktu tipu. Sintakse: SAITE<Имя таблицы>

Lietošanas piemērs:

Pieprasījums.Teksts = //ja ierakstītāja vērtības tips ir dokuments Kvīts, //tad vaicājums atgriezīs "Preču saņemšana", pretējā gadījumā "Preču pārdošana" "SELECT | SELECT | WHEN Remaining.Registrar LINK Dokuments.Preču saņemšanaPakalpojumi | TAD ""Saņemšana"" |. END AS Pārvietošanās veids |. Atlikušo produktu reģistrs noliktavās" ;

2. Dizains STARP - šis operators pārbauda, ​​vai vērtība ir norādītajā diapazonā.

Sintakse: STARP<Выражение>UN<Выражение>

Lietošanas piemērs:

Request.Text = //iegūstiet visu nomenklatūru, kuras kods ir diapazonā no 1 līdz 100 "SELECT | Nomenclature.Link | FROM | Directory.Nomenclature AS Nomenclature | WHERE | Nomenclature.Code BETWEEN 1 UN 100" ;

3. Konstrukcijas B un B HIERARHIJA- pārbaudiet, vai vērtība ir pārsūtītajā sarakstā (masīvus, vērtību tabulas utt. var pārsūtīt kā sarakstu). Operators IN HIERARHIJA ļauj skatīt hierarhiju (kontu plāna izmantošanas piemērs).

Sintakse: IN(<СписокЗначений>), HIERARHJĀ(<СписокЗначений>)

Lietošanas piemērs:

Pieprasījums.Teksts = //atlasīt visus konta apakškontus "SELECT | Pašpietiekams. Saistīt AS kontu | NO | Kontu plāns. Pašpietiekams AS Pašpietiekams | KUR | Pašpietiekams. Saite HIERARHIJAS VĒRTĪBĀ (Chart of Konti. Pašnodrošinātas preces.

4. Dizains LĪDZĪGS- Šī funkcija ļauj mums salīdzināt virkni ar virknes modeli.

Sintakse: PATĪK "<ТекстШаблона>"

Rindu raksta opcijas:

% — virkne, kas satur jebkādu skaitu patvaļīgu rakstzīmju.

Viens patvaļīgs raksturs.

[...] — jebkura atsevišķa rakstzīme vai rakstzīmju secība, kas norādīta kvadrātiekavās. Uzskaitījums var norādīt diapazonus, piemēram, a–z, kas nozīmē diapazonā iekļautu patvaļīgu rakstzīmi, tostarp diapazona beigas.

[^...] — jebkura atsevišķa rakstzīme vai rakstzīmju secība, kas norādīta kvadrātiekavās, izņemot tās, kas norādītas aiz nolieguma zīmes.

Lietošanas piemērs:

Query.Text = //atrodiet visu nomenklatūru, kas satur sakni TABUR un sākas //vai nu ar mazo vai lielo burtu t "SELECT | Nomenclature. Link | FROM | Directory. Nomenclature AS Nomenclature | WHERE | Products. Name LIKE "" [Tt ]abur%""" ;

5. Dizains ATĻAUTS- šis operators ļauj no datu bāzes atlasīt tikai tos ierakstus, kuriem zvanītājam ir lasīšanas atļauja. Šīs tiesības ir konfigurētas ieraksta līmenī (RLS).

Sintakse: ALOWED ir rakstīts aiz atslēgvārda SELECT

Lietošanas piemērs:

Request.Text = "ATLASĪT ATĻAUTO | Darījuma partneri. Saite | NO | Katalogs. Darījuma partneri KĀ darījuma partneri";

6. Dizains DAŽĀDI- ļauj atlasīt ierakstus, kuros nav ierakstu dublikātu.

Sintakse: DAŽĀDI ir rakstīts aiz atslēgvārda SELECT

Lietošanas piemērs:

Request.Text = //atlasa ierakstus, uz kuriem lasītājam ir tiesības "IZVĒLĒTIES DAŽĀDU | Counterparties.Name |FROM | Directory. Counterparties AS Counterparties" ;

Tāpat DAŽĀDU konstrukciju var izmantot ar ATĻAUTO operatoru un citiem operatoriem.

Lietošanas piemērs:

Request.Text = //atlasa dažādus ierakstus, uz kuriem lasītājam ir tiesības "ATLASĪT ATĻAUTOS DAŽĀDU | Counterpartities.Name |FROM | Directory. Counterparties AS Counterpartities";

7. Dizains PIRMAIS- no vaicājuma rezultāta izvēlas parametrā norādīto ierakstu skaitu.

Sintakse: FIRST<число>

Lietošanas piemērs:

Request.Text = //atlasiet pirmos 4 CCD numurus no direktorija "SELECT FIRST 4 | CCD Numbers. Link | FROM | Directory. CCD Numbers AS CCD Numbers";

8. Dizains PĀRMAIŅĀM- ļauj bloķēt galdu, darbojas tikai transakcijās (attiecas tikai uz automātiskajām slēdzenēm).

Sintakse: LAI MAINĪTIES<НаименованиеТаблицы>

Lietošanas piemērs:

Query.Text = "SELECT | Bezmaksas atlikumi, atlikumi. Nomenklatūra, | Bezmaksas atlikumi. Noliktava, | Bezmaksas atlikumi. Noliktavā Atlikušie | NO | Uzkrājumu reģistrs. Bezmaksas atlikumi. Atlikumi KĀ bezmaksas atlikumi Atlikumi | MAINĪJUMU reģistrs | Brīvās atliekas.

9. Dizains PASŪTĪT PĒC- sakārto datus pēc noteikta lauka. Ja lauks ir saite, tad, uzstādot karogu AUTO PASŪTĪJUMS Kārtošana notiks pēc saites attēlojuma, ja karodziņš ir izslēgts, tad saites tiek kārtotas pēc saites adreses vecumposma atmiņā.

Sintakse: PASŪTĪT PĒC<НаименованиеПоля>AUTO PASŪTĪJUMS

Lietošanas piemērs:

Query.Text = "SELECT | Free Remainings Remainings. Nomenclature AS Nomenclature, | Free Remainings Remainings. Warehouse AS Noliktava, | Free Remainings Remainings. Noliktavā Atlikušie | FROM | Reģistrēt Uzkrājumi. Bezmaksas Atlikumi. Atlikušie AS Free Remaining Remainings BY | |. Nomenklatūra |. AUTO PASŪTĪJUMU LASĪŠANA";

10. Dizains GROUP BY- izmanto, lai grupētu vaicājuma virknes pēc noteiktiem laukiem. Ciparu lauki ir jāizmanto ar jebkuru apkopošanas funkciju.

Sintakse: GROUP BY<НаименованиеПоля1>, .... , <НаименованиеПоляN>

Lietošanas piemērs:

Query.Text = "SELECT | ProductsInWarehouses.Nomenclature AS Nomenclature, | ProductsInWarehouses.Warehouse, | SUM(GoodsInWarehouses.Stock) AS KRĀJUMI | NO | ReģistrētiesUzkrājumi.ProduktiNoliktavās AS |ProduktiNoliktavās |Noliktavā .Noliktava";

11. Dizains HAVING- ļauj datu atlases nosacījumam lietot apkopošanas funkciju, līdzīgi kā WHERE konstrukcijai.

Sintakse: ŅEMOT<агрегатная функция с условием>

Lietošanas piemērs:

Query.Text = //atlasa grupētus ierakstus, kur InStock lauks ir lielāks par 3 "SELECT | ItemsInStocks.Nomenclature AS Nomenclature, | ItemsInWarehouses.Warehouse, | SUM(ItemsInStocks.InStock) AS INSTOCK |FROM | RegisterItemstockumlationsa. GROUP BY |. ProduktiNoliktavās.Noliktavās |.SUMMA (ProduktiNoliktavās) > 3" ;

12. Būvniecības INDEX BY- izmanto vaicājuma lauka indeksēšanai. Vaicājuma ar indeksēšanu pabeigšana prasa ilgāku laiku, taču paātrina meklēšanu indeksētos laukos. Var izmantot tikai virtuālajās tabulās.

Sintakse: INDEX BY<Поле1, ... , ПолеN>

Lietošanas piemērs:

Query.Text = "SELECT | Ts.NameOS, | Ts.FolderNumber, | Ts.CodeOS, | Ts.Term, | Ts.Type | PLACE DataTs | FROM | &Ts AS Ts | | INDEX BY | Ts.NameOS, | Ts .CodeOS";

13. Dizains KUR- ļauj uzlikt nosacījumu jebkuram atlases laukam. Rezultātā tiks iekļauti tikai tie ieraksti, kas atbilst nosacījumam.

Sintakse: KUR<Условие1 ОператорЛогСоединения УсловиеN>

Lietošanas piemērs:

Query.Text = //ir atlasīti visi ieraksti ar CompensationRemaining<>0 un //AmountFor CalcCompRemaining > 100 "SELECT | CompensationRPORemains.Counterparty, |CompensationRPORemains.Child, | CompensationRPORemains.CompensationRemains, | CompensationRPORemains.AmountForCalcCompRemains.AmountForCalcCompRemains.AccumulsRPRemains | AtlīdzībaRPORatlikums |KUR |AtlīdzībaRPORatlikums.Atlikušais kompensācija<>0 | Un CompensationRPORemains.AmountForCalcCompRemaining> 100" ;

14. Dizaina REZULTĀTI... VISPĀRĪGI- izmanto kopsummas aprēķināšanai, dizainā ir norādīti lauki, pēc kuriem tiks aprēķinātas kopsummas un agregētās funkcijas attiecas uz kopsavilkuma laukiem. Izmantojot kopsummas katram laukam pēc konstrukcijas KOPĀ, dati tiek grupēti. Pēc izvēles ir GENERAL konstrukcija, tā izmantošana nodrošina arī papildu grupēšanu. Tālāk redzēsit pieprasījuma rezultāta piemēru.

Sintakse: REZULTĀTI<АгрегатнаяФункция1, ... , АгрегатнаяФункцияN>BY<ОБЩИЕ> <Поле1, ... , ПолеN>

Lietošanas piemērs:

Request.Text = "SELECT | Aprēķini. Darījuma partnera līgums. Līguma veids AS Līguma veids, | Aprēķini. Darījuma partnera līgums AS līgums, | Aprēķini. Darījuma partneris, | Aprēķini. Savstarpējo norēķinu bilances summa AS bilance | NO | Uzkrājumu reģistrs. Savstarpēja Norēķini AR Darījuma partneriem |. KOPĀ |. VISPĀRĪGI, |Līguma veids";

Attēlā ir norādīti grupējumi, kas tika izveidoti pieprasījuma izpildes laikā, augšējais attiecas uz sadaļu VISPĀRĪGI, bet otrais uz lauku Darījuma partnera līgumaLīguma veids.

Neskatoties uz visiem trūkumiem, teksta lauka meklēšana joprojām ir viena no populārākajām. Virkņu datu tipus varam atrast visur – šādā formātā var saglabāt vārdus, kontu numurus, adreses, kā arī citu informāciju. Izstrādātāju ērtībām vaicājumi iebūvētajā 1C valodas lietojumā īpašs operators"LIKE". Šī ir viena no visbiežāk izmantotajām komandām, tāpēc bez pamatīgām zināšanām par tās sintaksi un iespējām programmētājam būs grūti strādāt.

Izmantojot operatoru LIKE

Pirms izmantot jebkuru operatoru praksē, jums ir skaidri jāsaprot tā mērķis, pielietojuma vietas un sintakse. “LIKE” izmantošanas mērķis 1C pieprasījumā ir pārbaudīt, vai nosacījums ir izpildīts kā veidne. Atgriešanas vērtība ir Būla tips — patiess vai nepatiess —, kas norāda, vai norādītais nosacījums ir patiess. Operatoru LIKE var izmantot vairākās vaicājuma vietās:

  • Nosacījumu blokā atzīmēts atslēgvārds"KUR";
  • Izvēles Kad tad citādi beigas dizainā;
  • Tieši atlases laukos, lauku salīdzināšanas rezultātā.

Verifikācijas sintakse vienmēr ir vienāda un sastāv no 3 saitēm. Pa kreisi teksta vērtība, kas tiek pārbaudīts, tad pats operators “LIKE”, un labajā pusē ir veidne, pēc kuras tiek veikta pārbaude. Lai ātri un ērti izveidotu veidnes, ir īpašās rakstzīmes, kas veicina attīstību:

  1. “%” – jebkuru rakstzīmju secība patvaļīgs garums. Izmanto, lai virknē meklētu atsevišķus vārdus vai ciparus;
  2. “_” — jebkura atsevišķa rakstzīme. Paredzēts, lai norādītu uz vienas rakstzīmes klātbūtni;
  3. “[...]” ir rakstzīmju secība, kas jāsalīdzina ar rakstzīmi virknē. Ar šāda modeļa palīdzību tiek pārbaudīta atbilstība jebkurai iekavās norādītajai rakstzīmei. Varat arī norādīt ciparu vai burtu diapazonu ([a-g], );
  4. “[^...]” ir pretējs modelis iepriekšējam. Tiek pārbaudīta atšķirība starp rindā norādītajām rakstzīmēm un iekavās norādītajām rakstzīmēm.

Lai labāk izprastu un izprastu pareizu veidņu veidošanas principus, apskatīsim dažus piemērus, ar kuriem bieži nākas saskarties izstrādātāju dzīvē. Pirmais ir tad, kad no nomenklatūras direktorija ir jāatlasa visi vienumi, kuru nosaukumos parādās vārds “CUTTER”. Šajā gadījumā vaicājuma nosacījumos ir jāizmanto LIKE:

SELECT Nomenclature.Name AS Nosaukums FROM Directory.Nomenclature AS Nomenclature WHERE Nomenclature.Name LĪDZĪGI "% CUTTER%"

Ja mēs noņemsim abus “%” simbolus, vaicājumā tiks parādīts produkts, kura nosaukums pilnībā atbilst pēdiņās norādītajam. Ja atstājam veidni “CUTTER%” vai “% CUTTER”, tad rezultāts būs to vienumu saraksts, kas attiecīgi beidzas vai sākas ar noteiktu rakstzīmju kombināciju.


Apskatīsim problēmu, kas var mulsināt iesācēju programmētājus, kuri nezina vaicājuma sintaksi. Pieņemsim, ka jums ir jāatrod visi vienumi, kuru nosaukumos ir simbols “%”. Īpaši gadījumos, kad jāmeklē rezervētās rakstzīmes, ir operators “speciālā rakstzīme”. #,\,/,~ un citas rakstzīmes var izmantot kā speciālo rakstzīmi, pēc kuras visas rezervētās rakstzīmes vienkārši apzīmēs zīmi.

SELECT Nomenklatūra.Nosaukums AS Nosaukums FROM Direktorija.Nomenklatūra AS Nomenklatūra WHERE Nomenklatūra.Nosaukums LĪDZĪGI "%#%" SPECIAL CHARACTER "#"

Ja meklēšanā ir jāizmanto parametrs, tad vaicājuma mainīgais ar parametru LĪDZĪGS tiek izmantots, izmantojot pievienošanu. Atcerieties, ka parametram ir jābūt virknes tipam, pretējā gadījumā tas būs jāpārvērš par virkni pieprasījumā. Šī ir diezgan sarežģīta operācija, un labāk to iepriekš izslēgt.

SELECT Nomenclature.Name AS Nosaukums FROM Directory.Nomenclature AS Nomenclature WHERE Nomenclature.Name LĪDZĪGI "%" + &name + "%"

Funkcija LĪDZĪGA ir piemērojama visās platformas versijās, sākot no 8, un tās pielietojamības dēļ 1C izstrādātāji to nevēlēsies mainīt. noteikti, teksta meklēšana vienmēr ir atkarīgs no vārda ievadīšanas precizitātes, taču tas joprojām ir viens no visizplatītākajiem. Šajā sakarā profesionāliem 1C izstrādātājiem ir jāizpēta LĪDZĪGA izmantošana ar visām tā niansēm.

43
NULL — trūkst vērtību. 26
Nejaukt ar nulles vērtību! NULL nav skaitlis, nav vienāds ar atstarpi, tukšu atsauci vai Undefined. 18
NULL ir tipu veidojoša vērtība, t.i. ir tips NULL un viena šāda veida vērtība. NULL... Lai ģenerētu un izpildītu vaicājumus datu bāzes tabulām platformā 1C, tiek izmantots īpašs programmēšanas valodas Query objekts. Šis objekts tiek izveidots, izsaucot New Request konstrukciju. Ērts pieprasījums... 12
Saskāros ar uzdevumu atlasīt visus maksājumu dokumentus un sagrupēt pēc dokumenta veida! Pārskatījis visus mājokļus un komunālos pakalpojumus un internetu, es to sapratu vienkāršs veids

saņemt Pieprasījumā nav norādīts dokumenta veids:(Man vajadzēja... Operators PATĪK

ļauj salīdzināt virknes tipa datus vaicājumā, kas atrodas pa kreisi no operatora, ar virknes tipa datiem, kas atrodas operatora labajā pusē. Salīdzinājuma rezultāts tiek novērtēts kā Patiess vai Nepatiess, tāpēc salīdzinājumu var izmantot kā nosacījumu. Operators Operatoram

  • Ir īpašas pakalpojumu rakstzīmes, kas netiek uztvertas kā virkne:
  • Procentu simbols "%": norāda uz jebkura skaita patvaļīgu rakstzīmju klātbūtni virknē
  • "[...]" viena vai vairākas rakstzīmes kvadrātiekavās: norāda uz jebkuras (atsevišķas) no uzskaitītajām rakstzīmēm. Var norādīt arī rakstzīmju diapazonu (piemēram)
  • "_" pasvītrojums: norāda jebkuras patvaļīgas rakstzīmes klātbūtni
"[^...]" nolieguma rakstzīme: apzīmē jebkuras atsevišķas rakstzīmes klātbūtni, izņemot tās, kas norādītas kvadrātiekavās

Ja salīdzināšanai ir jānorāda kāda no iepriekš minētajām īpašajām rakstzīmēm, jāizmanto atslēgvārds "ĪPAŠAIS SIMBOLS"

Lietošanas iespējas ar dažādām DBVS IBM DB2
"Tikai parametru var novietot pa labi no LĪDZĪGA operatora. Vienīgās aizstājējzīmes ir "_" (pasvītrojums nozīmē jebkuru rakstzīmi) un "%" (procentos, kas nozīmē jebkuru rakstzīmju secību). Ja tiek izmantota DBVS " PostgreSQL "vai" Oracle datu bāze "īpašie varoņi" kvadrātiekavās

[...]" tiek pieņemti tikai tad, ja tie ir norādīti pieprasījuma tekstā, un NAV nodoti pieprasījumam kā parametrs.

Tādējādi failu datu bāzē speciālās rakstzīmes vienmēr tiks uztvertas vienādi un atšķirīgi atkarībā no klienta-servera versijā izmantotās DBVS.

Piemērs: atlasiet produktus, kuru nosaukumā ir simbols "%".

IZVĒLĒTIES | Ref.Link |NO | Katalogs Nomenklatūra KĀ | Atsauces nosaukums LIKE "%\%" ĪPAŠS RAKSTURS "\"

Piemērs: atlasiet produktus, kuru nosaukumi sākas ar vārdu "Tvertne"

IZVĒLĒTIES | Ref.Link |NO | Katalogs Nomenklatūra KĀ | Atsauces nosaukums LĪDZĪGS "Bak%"

Piemērs: atlasiet produktus, kuru nosaukumi beidzas ar skaitli