Disenyo ng Query

Ang Query Design View ay nagbibigay-daan sa iyong lumikha at mag-edit ng query sa database.

Para ma-access ang command na ito...

Sa isang window ng database file, i-click ang Mga tanong icon, pagkatapos ay piliin I-edit - I-edit .


note

Karamihan sa mga database ay gumagamit ng mga query upang i-filter o pag-uri-uriin ang mga talahanayan ng database upang ipakita ang mga tala sa iyong computer. Ang mga view ay nag-aalok ng parehong functionality tulad ng mga query, ngunit sa panig ng server. Kung ang iyong database ay nasa isang server na sumusuporta sa mga view, maaari mong gamitin ang mga view upang i-filter ang mga tala sa server upang mapabilis ang oras ng pagpapakita.


note

Ang pagpili sa command na Gumawa ng View mula sa pahina ng tab na Tables ng isang database ng dokumento, makikita mo ang View Design na window na kahawig ng Query Design window na inilarawan dito.


Ang layout ng window ng Query Design ay iniimbak na may nilikhang query, ngunit hindi maiimbak na may nilikhang view.

Ang Design View

Upang lumikha ng query, i-click ang icon na Queries sa isang database ng dokumento, pagkatapos ay i-click ang Gumawa ng Query sa Design View.

Ang ibabang pane ng Design View ay kung saan mo tutukuyin ang query. Upang tukuyin ang isang query, tukuyin ang mga pangalan ng patlang ng database na isasama at ang pamantayan para sa pagpapakita ng mga patlang. Upang muling ayusin ang mga column sa ibabang pane ng Design View, i-drag ang header ng column sa isang bagong lokasyon, o piliin ang column at pindutin ang +arrow key.

Sa itaas ng query na window ng Design View, ang mga icon ng Query Design Bar at ang Design bar ay ipinapakita.

Kung gusto mong subukan ang isang query, i-double click ang pangalan ng query sa dokumento ng database. Ang resulta ng query ay ipinapakita sa isang talahanayan na katulad ng Data Source View. Tandaan: pansamantala lamang ang ipinapakitang talahanayan.

Mga Susi sa Query Design View

Susi

Function

F4

Silipin

F5

Patakbuhin ang Query

F7

Magdagdag ng Talahanayan o Query


Mag-browse

Kapag binuksan mo ang disenyo ng query sa unang pagkakataon, makikita mo ang isang dialog kung saan dapat mo munang piliin ang talahanayan o query na magiging batayan para sa iyong bagong query.

I-double click ang mga field upang idagdag ang mga ito sa query. I-drag-and-drop upang tukuyin ang mga ugnayan.

note

Habang nagdidisenyo ng query, hindi mo maaaring baguhin ang mga napiling talahanayan.


Alisin ang mga talahanayan

Upang alisin ang talahanayan mula sa Design View, i-click ang itaas na hangganan ng window ng talahanayan at ipakita ang menu ng konteksto. Maaari mong gamitin ang command na Delete upang alisin ang talahanayan mula sa Design View. Ang isa pang opsyon ay pindutin ang Delete key.

Ilipat ang talahanayan at baguhin ang laki ng talahanayan

Maaari mong baguhin ang laki at ayusin ang mga talahanayan ayon sa iyong mga kagustuhan. Upang ilipat ang mga talahanayan, i-drag ang itaas na hangganan sa nais na posisyon. Palakihin o bawasan ang laki kung saan ipinapakita ang talahanayan sa pamamagitan ng pagpoposisyon ng mouse cursor sa isang hangganan o sa isang sulok at pagkaladkad sa talahanayan hanggang sa ito ay ang nais na laki.

Mga Relasyon sa Talahanayan

Kung mayroong mga ugnayan ng data sa pagitan ng isang pangalan ng field sa isang talahanayan at isang pangalan ng field sa isa pang talahanayan, maaari mong gamitin ang mga relasyon na ito para sa iyong query.

Kung, halimbawa, mayroon kang spreadsheet para sa mga artikulong natukoy sa pamamagitan ng isang numero ng artikulo, at isang spreadsheet para sa mga customer kung saan itinatala mo ang lahat ng mga artikulo na inorder ng isang customer gamit ang mga katumbas na numero ng artikulo, kung gayon mayroong kaugnayan sa pagitan ng dalawang "numero ng artikulo" mga patlang ng data. Kung gusto mo na ngayong gumawa ng query na nagbabalik ng lahat ng artikulo na iniutos ng isang customer, dapat mong kunin ang data mula sa dalawang spreadsheet. Para magawa ito, dapat mong ipaalam kay LibreOffice ang tungkol sa ugnayang umiiral sa pagitan ng data sa dalawang spreadsheet.

Upang gawin ito, i-click ang isang pangalan ng field sa isang talahanayan (halimbawa, ang pangalan ng field na "Item-Number" mula sa talahanayan ng Customer), pindutin nang matagal ang pindutan ng mouse at pagkatapos ay i-drag ang pangalan ng field sa pangalan ng field ng isa pang talahanayan (" Item-Number" mula sa talahanayan ng Item). Kapag binitawan mo ang pindutan ng mouse, lilitaw ang isang linya na nagkokonekta sa dalawang field sa pagitan ng dalawang table window. Ang kaukulang kundisyon na ang nilalaman ng dalawang pangalan ng field ay dapat na magkapareho ay ipinasok sa resultang SQL query.

Ang paggawa ng query na nakabatay sa ilang nauugnay na sheet ay posible lamang kung gagamitin mo ang LibreOffice bilang interface para sa relational database.

note

Hindi mo ma-access ang mga talahanayan mula sa iba't ibang mga database sa isang query. Ang mga query na kinasasangkutan ng maramihang mga talahanayan ay maaari lamang gawin sa loob ng isang database.


Pagtukoy sa uri ng kaugnayan

Kung nag-double click ka sa linyang nagkokonekta sa dalawang naka-link na field o tumawag sa command ng menu Insert - Bagong Relasyon , maaari mong tukuyin ang uri ng kaugnayan sa Relasyon diyalogo.

Bilang kahalili, pindutin ang Tab hanggang sa mapili ang linya, pagkatapos ay pindutin ang Shift+F10 upang ipakita ang menu ng konteksto at doon piliin ang command I-edit . Sinusuportahan lamang ng ilang database ang isang subset ng posibleng mga uri ng pagsali.

Pagtanggal ng mga relasyon

Upang magtanggal ng kaugnayan sa pagitan ng dalawang talahanayan, i-click ang linya ng koneksyon at pagkatapos ay pindutin ang Delete key.

Bilang kahalili, tanggalin ang kaukulang mga entry sa Mga patlang na kasangkot sa Relasyon diyalogo. O pindutin ang Tab hanggang sa ipakita ang connecting vector na naka-highlight, pagkatapos ay pindutin ang Shift+F10 para buksan ang context menu at piliin Tanggalin utos.

Pagtukoy sa query

Pumili ng mga kundisyon para tukuyin ang query. Ang bawat column ng talahanayan ng disenyo ay tumatanggap ng field ng data para sa query. Ang mga kundisyon sa isang hilera ay naka-link sa isang Boolean AT.

Pagtukoy sa mga pangalan ng field

Una, piliin ang lahat ng mga pangalan ng field mula sa mga talahanayan na gusto mong idagdag sa query. Magagawa mo ito alinman sa pamamagitan ng pag-drag-and-drop o sa pamamagitan ng pag-double click sa pangalan ng field sa window ng talahanayan. Gamit ang paraan ng drag-and-drop, gamitin ang mouse upang i-drag ang isang pangalan ng field mula sa window ng talahanayan patungo sa ibabang bahagi ng window ng disenyo ng query. Habang ginagawa mo ito, maaari kang magpasya kung aling column sa window ng disenyo ng query ang makakatanggap ng napiling field. Maaari ding pumili ng pangalan ng field sa pamamagitan ng pag-double click. Pagkatapos ay idaragdag ito sa susunod na libreng column sa window ng disenyo ng query.

Tinatanggal ang mga pangalan ng field

Upang alisin ang isang pangalan ng field mula sa query, i-click ang header ng column ng field at piliin ang Tanggalin command sa menu ng konteksto para sa column.

Sine-save ang query

Gamitin ang I-save icon sa Standard toolbar upang i-save ang query. Makakakita ka ng dialog na humihiling sa iyong maglagay ng pangalan para sa query. Kung sinusuportahan ng database ang mga schema, maaari ka ring magpasok ng pangalan ng schema.

Schema

Ilagay ang pangalan ng schema na itinalaga sa query o table view.

Pangalan ng query o pangalan ng table view

Ilagay ang pangalan ng query o table view.

Pag-filter ng data

Upang i-filter ang data para sa query, itakda ang nais na pamantayan sa ibabang bahagi ng window ng disenyo ng query. Available ang mga sumusunod na opsyon:

Patlang

Ilagay ang pangalan ng field ng data na tinutukoy sa Query. Ang lahat ng mga setting na ginawa sa mga hilera ng opsyon sa filter ay tumutukoy sa field na ito. Kung i-activate mo ang isang cell dito gamit ang pag-click ng mouse makakakita ka ng arrow button, na nagbibigay-daan sa iyong pumili ng field. Pinipili ng opsyong "Pangalan ng talahanayan.*" ang lahat ng field ng data na may epekto na ilalapat ang tinukoy na pamantayan sa lahat ng field ng talahanayan.

alyas

Tinutukoy ang isang alias. Ang alyas na ito ay ililista sa query sa halip na ang pangalan ng field. Ginagawa nitong posible na gumamit ng mga label ng column na tinukoy ng gumagamit. Halimbawa, kung ang field ng data ay pinangalanang PtNo at, sa halip na pangalang iyon, gusto mong ipakita ang PartNum sa query, ilagay ang PartNum bilang alias.

Sa isang SQL statement, ang mga alias ay tinukoy bilang mga sumusunod:

PUMILI ng column BILANG alyas MULA sa talahanayan.

Halimbawa:


SELECT "PtNo" AS "PartNum" FROM "Parts"

mesa

Ang kaukulang talahanayan ng database ng napiling field ng data ay nakalista dito. Kung i-activate mo ang cell na ito gamit ang isang pag-click ng mouse, lilitaw ang isang arrow na magbibigay-daan sa iyong pumili ng ibang talahanayan para sa kasalukuyang query.

Pagbukud-bukurin

Kung nag-click ka sa cell na ito, maaari kang pumili ng opsyon sa pag-uuri: pataas, pababa at hindi pinagsunod-sunod. Ang mga field ng text ay pag-uuri-uriin ayon sa alpabeto at numerical na mga patlang ayon sa numero. Para sa karamihan ng mga database, maaaring itakda ng mga administrator ang mga opsyon sa pag-uuri sa antas ng database.

Nakikita

Kung mamarkahan mo ang Nakikita property para sa isang field ng data, ang field na iyon ay makikitang ipapakita sa resultang query . Kung gumagamit ka lamang ng field ng data upang bumalangkas ng kundisyon o gumawa ng kalkulasyon, hindi mo kailangang ipakita ito.

Pamantayan

Tinutukoy ang isang unang pamantayan kung saan ang nilalaman ng field ng data ay sasalain.

o

Dito maaari kang magpasok ng isang karagdagang pamantayan ng filter para sa bawat linya. Ang maraming pamantayan sa iisang column ay bibigyang-kahulugan bilang boolean OR.

Maaari mo ring gamitin ang menu ng konteksto ng mga header ng linya sa ibabang bahagi ng window ng disenyo ng query upang magpasok ng filter batay sa isang function:

Mga pag-andar

Ang mga function na magagamit dito ay nakasalalay sa mga ibinigay ng database engine.

Kung nagtatrabaho ka sa naka-embed na database ng HSQL, ang kahon ng listahan sa Function row ay nag-aalok sa iyo ng mga sumusunod na opsyon:

Pagpipilian

SQL

Epekto

Walang function

Walang function na isasagawa.

Katamtaman

AVG

Kinakalkula ang arithmetic mean ng isang field.

Bilang

COUNT

Tinutukoy ang bilang ng mga tala sa talahanayan. Maaaring mabilang ang mga walang laman na field (a) o hindi kasama (b).

a) COUNT(*): Pagpasa ng asterisk habang binibilang ng argumento ang lahat ng record sa table.

b) COUNT(column): Ang pagpapasa ng pangalan ng field bilang argumento ay binibilang lamang ang mga talaan kung saan naglalaman ng value ang tinukoy na field. Ang mga talaan kung saan ang field ay may Null value (ibig sabihin, walang textual o numeric na value) ay hindi mabibilang.

Pinakamataas

MAX

Tinutukoy ang pinakamataas na halaga ng isang tala para sa field na iyon.

Pinakamababa

MIN

Tinutukoy ang pinakamababang halaga ng isang tala para sa field na iyon.

Sum

SUM

Kinakalkula ang kabuuan ng mga halaga ng mga talaan para sa mga nauugnay na field.

Grupo

GROUP BY

Pinapangkat ang data ng query ayon sa napiling pangalan ng field. Ang mga pag-andar ay isinasagawa ayon sa mga tinukoy na grupo. Sa SQL, ang opsyong ito ay tumutugma sa GROUP BY clause. Kung may idinagdag na criterion, lalabas ang entry na ito sa sub-clause ng SQL HAVING.


Maaari ka ring magpasok ng mga function na tawag nang direkta sa SQL statement. Ang syntax ay:

PUMILI NG FUNCTION(column) MULA sa talahanayan.

Halimbawa, ang function na tawag sa SQL para sa pagkalkula ng isang kabuuan ay:


PUMILI NG SUM("Presyo") MULA SA "Artikulo".

Maliban sa Grupo function, ang mga function sa itaas ay tinatawag na Aggregate functions. Ito ay mga function na nagkalkula ng data upang lumikha ng mga buod mula sa mga resulta. Maaaring posible rin ang mga karagdagang function na hindi nakalista sa list box. Nakadepende ang mga ito sa partikular na database engine na ginagamit at sa kasalukuyang functionality na ibinigay ng Base driver na ginamit upang kumonekta sa database engine na iyon.

Upang magamit ang iba pang mga function na hindi nakalista sa kahon ng listahan, dapat mong manu-manong ipasok ang mga ito sa ilalim Patlang .

Maaari ka ring magtalaga ng mga alias sa mga function na tawag. Kung ayaw mong ipakita ang query string sa column header, maglagay ng gustong kapalit na pangalan sa ilalim alyas .

Ang kaukulang function sa isang SQL statement ay:

PUMILI NG FUNCTION() BILANG alyas MULA sa talahanayan

Halimbawa:


PUMILI NG BILANG(*) BILANG bilang MULA SA "Item"
note

Kung magpapatakbo ka ng ganoong function, hindi ka makakapagpasok ng anumang karagdagang column para sa query maliban sa bilang isang argument sa isang function na "Group."


Mga halimbawa

Sa sumusunod na halimbawa, ang isang query ay pinapatakbo sa dalawang talahanayan: isang talahanayang "Item" na may field na "Hindi_Item" at isang talahanayang "Mga Tagapagtustos" na may field na "Pangalan_Supplier." Bilang karagdagan, ang parehong mga talahanayan ay may karaniwang pangalan ng field na "Supplier_No."

Ang mga sumusunod na hakbang ay kinakailangan upang lumikha ng isang query na naglalaman ng lahat ng mga supplier na naghahatid ng higit sa tatlong mga item.

  1. Ipasok ang mga talahanayang "Item" at "Mga Supplier" sa disenyo ng query.

  2. I-link ang mga field na "Supplier_No" ng dalawang talahanayan kung wala pang kaugnayan ng ganitong uri.

  3. Mag-double click sa field na "Item_No" mula sa table na "Item". Ipakita ang Function linya gamit ang context menu at piliin ang Count function.

  4. Ilagay ang >3 bilang criterion at huwag paganahin ang Nakikitang field.

  5. I-double click ang field na "Supplier_Name" sa table na "Supplier" at piliin ang Group function.

  6. Patakbuhin ang query.

Kung ang "presyo" (para sa indibidwal na presyo ng isang artikulo) at "Supplier_No" (para sa supplier ng artikulo) ay umiiral sa talahanayan ng "Item", maaari mong makuha ang average na presyo ng item na ibinibigay ng isang supplier kasama ang sumusunod na query:

  1. Ipasok ang talahanayang "Item" sa disenyo ng query.

  2. I-double click ang mga field na "Price" at "Supplier_No".

  3. Paganahin ang Function linya at piliin ang Average na function mula sa field na "Presyo".

  4. Maaari mo ring ilagay ang "Average" sa linya para sa pangalan ng alias (nang walang mga panipi).

  5. Piliin ang Pangkat para sa field na "Supplier_No".

  6. Patakbuhin ang query.

Available ang sumusunod na mga command at simbolo ng menu ng konteksto:

Mga pag-andar

Nagpapakita o nagtatago ng row para sa pagpili ng mga function.

Pangalan ng Talahanayan

Ipinapakita o itinago ang row para sa pangalan ng talahanayan.

Pangalan ng alyas

Ipinapakita o itinatago ang row para sa pangalan ng alias.

Mga Katangi-tanging Halaga

Kinukuha lang ang mga natatanging value mula sa query. Nalalapat ito sa maraming talaan na maaaring naglalaman ng ilang paulit-ulit na paglitaw ng data sa mga napiling field. Kung ang Mga Katangi-tanging Halaga Ang command ay aktibo, dapat ka lang makakita ng isang tala sa query (DISTINCT). Kung hindi, makikita mo ang lahat ng mga tala na tumutugma sa pamantayan ng query (LAHAT).

Halimbawa, kung ang pangalang "Smith" ay lumitaw nang ilang beses sa iyong database ng address, maaari mong piliin ang Mga Katangi-tanging Halaga utos na tukuyin sa query na isang beses lang magaganap ang pangalang "Smith".

Para sa isang query na kinasasangkutan ng ilang mga patlang, ang kumbinasyon ng mga halaga mula sa lahat ng mga patlang ay dapat na natatangi upang ang resulta ay mabuo mula sa isang partikular na tala. Halimbawa, mayroon kang "Smith sa Chicago" nang isang beses sa iyong address book at "Smith sa London" nang dalawang beses. Gamit ang Mga Katangi-tanging Halaga utos, gagamitin ng query ang dalawang field na "apelyido" at "lungsod" at ibabalik ang resulta ng query na "Smith sa Chicago" nang isang beses at "Smith sa London" nang isang beses.

Sa SQL, ang utos na ito ay tumutugma sa DISTINCT predicate.

Limitahan

Binibigyang-daan kang limitahan ang maximum na bilang ng mga tala na ibinalik ng isang query.

Kung a Limitahan idinagdag ang konstruksiyon, makakakuha ka ng hindi hihigit sa pinakamaraming row gaya ng numerong iyong tinukoy. Kung hindi, makikita mo ang lahat ng mga tala na tumutugma sa pamantayan ng query.

Pagbubuo ng mga kondisyon ng filter

Kapag bumubuo ng mga kundisyon ng filter, magagamit mo ang iba't ibang mga operator at command. Bukod sa mga relational operator, may mga SQL-specific na command na nagtatanong sa nilalaman ng mga field ng database. Kung gagamitin mo ang mga command na ito sa syntax ng LibreOffice, awtomatikong kino-convert ito ng LibreOffice sa kaukulang SQL syntax sa pamamagitan ng internal parser. Maaari mo ring direktang ipasok ang SQL command at i-bypass ang internal parser. Ang mga sumusunod na talahanayan ay nagbibigay ng pangkalahatang-ideya ng mga operator at utos:

Operator

Ibig sabihin

Ang kundisyon ay nasiyahan kung...

=

katumbas ng

... ang nilalaman ng field ay kapareho ng ipinahiwatig na expression.

Ang operator = ay hindi ipapakita sa mga field ng query. Kung nagpasok ka ng isang halaga nang walang anumang operator, ang = operator ay awtomatikong ipinapalagay.

<>

hindi katumbas ng

... ang nilalaman ng field ay hindi tumutugma sa tinukoy na expression.

>

mas malaki kaysa sa

... ang nilalaman ng field ay mas malaki kaysa sa tinukoy na expression.

<

mas mababa sa

... ang nilalaman ng field ay mas mababa kaysa sa tinukoy na expression.

>=

mas malaki kaysa o katumbas ng

... ang nilalaman ng field ay mas malaki kaysa o katumbas ng tinukoy na expression.

<=

mas mababa sa o katumbas ng

... ang nilalaman ng field ay mas mababa sa o katumbas ng tinukoy na expression.


utos ng LibreOffice.

SQL command

Ibig sabihin

Ang kundisyon ay nasiyahan kung...

IS EMPTY

IS NULL

ay null

... walang data ang field. Para sa mga field na Oo/Hindi na may tatlong posibleng estado, ang utos na ito ay awtomatikong nagtatanong sa hindi natukoy na estado (hindi Oo o Hindi).

IS NOT EMPTY

IS NOT NULL

ay hindi walang laman

... ang field ay hindi walang laman, ibig sabihin, naglalaman ito ng data.

LIKE

placeholder (*) para sa anumang bilang ng mga character

placeholder (?) para sa eksaktong isang character

LIKE

placeholder (%) para sa anumang bilang ng mga character

Placeholder (_) para sa eksaktong isang character

ay isang elemento ng

... ang data field ay naglalaman ng ipinahiwatig na expression. Ang (*) placeholder ay nagpapahiwatig kung ang expression na x ay nangyayari sa simula ng (x*), sa dulo ng (*x) o sa loob ng field na content (*x*). Maaari kang magpasok bilang isang placeholder sa mga query sa SQL alinman sa SQL % character o ang pamilyar na (*) file system na placeholder sa interface ng LibreOffice.

Ang (*) o (%) placeholder ay kumakatawan sa anumang bilang ng mga character. Ang tandang pananong (?) sa interface ng LibreOffice o ang underscore (_) sa mga query sa SQL ay ginagamit upang kumatawan sa eksaktong isang character.

NOT LIKE

NOT LIKE

Ay hindi isang elemento ng

... ang field ay hindi naglalaman ng data na mayroong tinukoy na expression.

BETWEEN x AND y

BETWEEN x AND y

nasa pagitan ng [x,y]

... ang field ay naglalaman ng isang data value na nasa pagitan ng dalawang value na x at y.

NOT BETWEEN x AND y

NOT BETWEEN x AND y

Hindi nasa pagitan ng [x,y]

... ang field ay naglalaman ng isang data value na hindi nasa pagitan ng dalawang value na x at y.

IN (a; b; c...)

Tandaan na ang mga semicolon ay ginagamit bilang mga separator sa lahat ng mga listahan ng halaga!

IN (a, b, c...)

naglalaman ng a, b, c...

... ang pangalan ng field ay naglalaman ng isa sa mga tinukoy na expression a, b, c,... Maaaring tukuyin ang anumang bilang ng mga expression, at ang resulta ng query ay tinutukoy ng isang boolean OR operator. Ang mga expression na a, b, c... ay maaaring alinman sa mga numero o mga character

NOT IN (a; b; c...)

NOT IN (a, b, c...)

hindi naglalaman ng a, b, c...

... ang field ay hindi naglalaman ng isa sa mga tinukoy na expression a, b, c,...

= TRUE

= TRUE

may halagang Tama

... ang pangalan ng field ay may value na True.

= FALSE

= FALSE

may value na false

... ang value ng data ng field ay nakatakda sa false.


Mga halimbawa

='Ms.'

nagbabalik ng mga pangalan ng field na may nilalaman ng field na "Ms."

<'2001-01-10'

ibinabalik ang mga petsa na naganap bago ang Enero 10, 2001

LIKE 'g?ve'

nagbabalik ng mga talaan na may nilalaman ng field gaya ng "give" at "give".

LIKE 'S*'

nagbabalik ng mga tala na may mga nilalaman ng field gaya ng "Sun".

BETWEEN 10 AND 20

nagbabalik ng mga talaan na may nilalaman ng patlang sa pagitan ng mga halagang 10 at 20. (Ang mga patlang ay maaaring alinman sa mga patlang ng teksto o mga patlang ng numero).

IN (1; 3; 5; 7)

nagbabalik ng mga talaan na may mga halagang 1, 3, 5, 7. Kung ang pangalan ng field ay naglalaman ng numero ng item, halimbawa, maaari kang lumikha ng query na nagbabalik sa item na may tinukoy na numero.

HINDI SA ('Smith')

nagbabalik ng mga talaan na hindi naglalaman ng "Smith".


Parang Escape Sequence: {escape 'escape-character'}

Halimbawa:


SELECT * FROM Item WHERE ItemName LIKE 'The *%' {escape '*'}

Ang halimbawa ay magbibigay sa iyo ng lahat ng mga entry kung saan nagsisimula ang pangalan ng item sa 'Ang *'. Nangangahulugan ito na maaari ka ring maghanap ng mga character na kung hindi man ay mabibigyang-kahulugan bilang mga placeholder, gaya ng *, ?, _, % or ang tuldok.

Panlabas na Pagsasama Escape Sequence: {oj outer-join}

Halimbawa:


SELECT Article.* FROM {oj item LEFT OUTER JOIN orders ON item.no=orders.ANR}

Pagtatanong sa mga field ng text

Upang i-query ang nilalaman ng isang field ng teksto, dapat mong ilagay ang expression sa pagitan ng mga solong panipi. Ang pagkakaiba sa pagitan ng malalaking titik at maliliit na titik ay nakasalalay sa database na ginagamit. Ang LIKE, ayon sa kahulugan, ay case-sensitive (bagaman ang ilang mga database ay hindi ito mahigpit na binibigyang kahulugan).

Pagtatanong sa mga field ng petsa

Mga field ng petsa ay kinakatawan bilang #Petsa# upang malinaw na matukoy ang mga ito bilang mga petsa. Ang mga constant ng petsa, oras at petsa/oras (literal) na ginagamit sa mga kundisyon ay maaaring alinman sa uri ng SQL Escape Syntax, o default na SQL2 syntax.

Elemento ng Uri ng Petsa

SQL Escape syntax #1 - maaaring hindi na ginagamit

SQL Escape syntax #2

SQL2 syntax

Petsa

{D'YYYY-MM-DD'}

{d 'YYYY-MM-DD'}

'YYYY-MM-DD'

Oras

{D'HH:MM:SS'}

{t 'HH:MI:SS[.SS]'}

'HH:MI:SS[.SS]'

PetsaOras

{D'YYYY-MM-DD HH:MM:SS'}

{ts 'YYYY-MM-DD HH:MI:SS[.SS]'}

'YYYY-MM-DD HH:MI:SS[.SS]'


Halimbawa:


SELECT {d '1999-12-31'} FROM world.years

Halimbawa:


SELECT * FROM mytable WHERE years='1999-12-31'

Ang lahat ng mga expression ng petsa (mga literal ng petsa) ay dapat na kasama ng mga solong panipi. (Kumonsulta sa reference para sa partikular na database at connector na ginagamit mo para sa higit pang mga detalye.)

Pagtatanong sa mga field ng Oo/Hindi

Upang mag-query ng mga field na Oo/Hindi, gamitin ang sumusunod na syntax para sa mga talahanayan ng dBASE:

Katayuan

Query criterion

Halimbawa

Mayroon

para sa mga talahanayan ng dBASE: hindi katumbas ng anumang ibinigay na halaga

=1 ay nagbabalik ng lahat ng mga tala kung saan ang Oo/Hindi field ay may katayuang "Oo" o "Naka-on" (pinili sa itim),

Hindi

.

=0 ibinabalik ang lahat ng mga tala kung saan ang Oo/Hindi field ay may katayuang "Hindi" o "Naka-off" (walang pinili).

Null

AY NULL

Ibinabalik ng IS NULL ang lahat ng mga tala kung saan ang field na Oo/Hindi ay wala sa mga estadong Oo o Hindi (pinili sa kulay abo).


note

Ang syntax ay depende sa database system na ginamit. Dapat mo ring tandaan na ang mga field na Oo/Hindi ay maaaring matukoy nang iba (2 estado lamang sa halip na 3).


Mga query sa parameter

Binibigyang-daan ng mga query ng parameter ang user na mag-input ng mga value sa run-time. Ang mga halagang ito ay ginagamit sa loob ng pamantayan para sa pagpili ng mga talaan na ipapakita. Ang bawat naturang halaga ay may pangalan ng parameter na nauugnay dito, na ginagamit upang i-prompt ang user kapag ang query ay pinapatakbo.

Ang mga pangalan ng parameter ay pinangungunahan ng isang colon sa parehong mga view ng Disenyo at SQL ng isang query. Magagamit ito saanman maaaring lumitaw ang isang halaga. Kung ang parehong halaga ay lilitaw nang higit sa isang beses sa query, ang parehong pangalan ng parameter ay ginagamit.

Sa pinakasimpleng kaso, kung saan ang gumagamit ay nagpasok ng isang halaga na itinugma para sa pagkakapantay-pantay, ang pangalan ng parameter kasama ang naunang colon nito ay ipinapasok lamang sa hilera ng Pamantayan. Sa SQL mode dapat itong i-type bilang WHERE "Field" = :Parameter_name

warning

Ang mga pangalan ng parameter ay maaaring hindi naglalaman ng alinman sa mga character<space> `!"$%^*()+={}[]@'~#<>?/, . Maaaring hindi sila kapareho ng mga pangalan ng field o mga salitang nakalaan sa SQL. Maaaring pareho sila ng mga alias.


tip

Ang isang kapaki-pakinabang na konstruksyon para sa pagpili ng mga talaan batay sa mga bahagi ng nilalaman ng field ng teksto ay ang pagdaragdag ng isang nakatagong column na may "LIKE '%' || :Part_of_field || '%'" bilang pamantayan. Pipili ito ng mga tala na may eksaktong tugma. Kung kailangan ng case-insensitive na pagsubok, isang solusyon ang gamitin LOWER (Field_Name) bilang patlang at LIKE LOWER ( '%' || :Part_of_field || '%' ) bilang pamantayan. Tandaan na ang mga puwang sa criterion ay mahalaga; kung sila ay naiwan ang SQL parser ay binibigyang kahulugan ang buong pamantayan bilang isang string na itugma. Sa SQL mode dapat itong i-type bilang LOWER ( "Field_Name") LIKE LOWER ( '%' || :Part_of_field || '%' ) .


Maaaring gamitin ang mga query ng parameter bilang data source para sa mga subform , upang payagan ang user na paghigpitan ang mga ipinapakitang tala.

Input ng Parameter

Ang Input ng Parameter hinihiling ng dialog sa user na ipasok ang mga value ng parameter. Maglagay ng value para sa bawat parameter ng query at kumpirmahin sa pamamagitan ng pag-click OK o pagta-type Pumasok .

Ang mga halagang ipinasok ng user ay maaaring binubuo ng anumang mga character na pinapayagan para sa SQL para sa nauugnay na pamantayan; ito ay maaaring depende sa pinagbabatayan na sistema ng database.

tip

Maaaring gamitin ng user ang mga SQL wild-card na character na "%" (arbitrary string) o "_" (arbitrary solong character) bilang bahagi ng value para mabawi ang mga record na may mas kumplikadong pamantayan.


SQL Mode

Ang SQL ay nangangahulugang "Structured Query Language" at naglalarawan ng mga tagubilin para sa pag-update at pangangasiwa ng mga relational na database.

Sa LibreOffice hindi mo kailangan ng anumang kaalaman sa SQL para sa karamihan ng mga query, dahil hindi mo kailangang ilagay ang SQL code. Kung gagawa ka ng query sa query designer, awtomatikong kino-convert ng LibreOffice ang iyong mga tagubilin sa kaukulang SQL syntax. Kung, sa tulong ng I-on/I-off ang Design View button, lumipat ka sa view ng SQL, makikita mo ang mga SQL command para sa isang query na nagawa na.

Maaari mong direktang bumalangkas ang iyong query sa SQL code. Tandaan, gayunpaman, na ang espesyal na syntax ay nakasalalay sa sistema ng database na iyong ginagamit.

Kung manu-mano mong ilalagay ang SQL code, maaari kang lumikha ng mga query na partikular sa SQL na hindi sinusuportahan ng graphical na interface sa Taga-disenyo ng query . Ang mga query na ito ay dapat isagawa sa native na SQL mode.

Sa pamamagitan ng pag-click sa Direktang patakbuhin ang SQL command icon sa SQL view, maaari kang bumuo ng query na hindi pinoproseso ng LibreOffice at direktang ipinadala sa database engine.

Mangyaring suportahan kami!