இடது மற்றும் வலது இணைப்பு 1 வி


7.7 மற்றும் 8 பதிப்புகளுக்கு இடையிலான முக்கிய வேறுபாடுகளில் 1C வினவல் மொழியும் ஒன்றாகும். 1C நிரலாக்கத்தைக் கற்றுக்கொள்வதில் மிக முக்கியமான புள்ளிகளில் ஒன்று வினவல் மொழி. 1C 8.3 இல், வினவல்கள் தரவைப் பெறுவதற்கான மிகவும் சக்திவாய்ந்த மற்றும் பயனுள்ள கருவியாகும். வினவல் மொழியானது தரவுத்தளத்திலிருந்து வசதியான முறையில் தகவல்களைப் பெற உங்களை அனுமதிக்கிறது.

தொடரியல் கிளாசிக் T-SQL ஐ மிகவும் நினைவூட்டுகிறது, தவிர 1C இல், வினவல் மொழியைப் பயன்படுத்தி, நீங்கள் தேர்ந்தெடு கட்டமைப்பைப் பயன்படுத்தி மட்டுமே தரவைப் பெற முடியும். மொழி மிகவும் சிக்கலான கட்டுமானங்களையும் ஆதரிக்கிறது, எடுத்துக்காட்டாக, (கோரிக்கைக்குள் கோரிக்கை). 1C 8 இல் உள்ள வினவல்களை சிரிலிக் மற்றும் லத்தீன் இரண்டிலும் எழுதலாம்.

இந்த கட்டுரையில் 1C வினவல் மொழியில் உள்ள முக்கிய வார்த்தைகளைப் பற்றி பேச முயற்சிப்பேன்:

  • தேர்வு
  • அனுமதிக்கப்பட்டது
  • பல்வேறு
  • வெளிப்படுத்துகிறது
  • முதலில்
  • மாற்றத்திற்காக
  • பொருள்
  • மதிப்பு வகை (மற்றும் குறிப்பு ஆபரேட்டர்)
  • தேர்வு
  • குழு மூலம்
  • கொண்ட
  • ISNULL
  • ஆம் NULL
  • இணைப்புகள் - வலது, இடது, உள், முழு.

1C மொழியின் சில சிறிய தந்திரங்கள், இதைப் பயன்படுத்தி நீங்கள் கோரிக்கை உரையை உகந்ததாக உருவாக்கலாம்.

1C 8.2 அமைப்பில் வினவல்களை பிழைத்திருத்த, ஒரு சிறப்பு கருவி வழங்கப்படுகிறது - வினவல் கன்சோல். நீங்கள் விளக்கத்தைக் காணலாம் மற்றும் இணைப்பைப் பயன்படுத்தி பதிவிறக்கம் செய்யலாம் -.

1C வினவல் மொழியின் மிக முக்கியமான மற்றும் சுவாரஸ்யமான ஆபரேட்டர்களைப் பார்ப்போம்.

தேர்ந்தெடுக்கவும்

1C Enterprise 8 வினவல் மொழியில், எந்த வினவலும் ஒரு முக்கிய சொல்லுடன் தொடங்கும் தேர்வு. 1C மொழியில் அப்டேட், டெலிட், டேபிளை உருவாக்குதல், இன்சர்ட் கன்ஸ்ட்ரக்ட்கள் எதுவும் இல்லை. அதன் நோக்கம் தரவைப் படிப்பது மட்டுமே.

உதாரணத்திற்கு:

தேர்வு
தற்போதைய அடைவு.பெயர்
இருந்து
அடைவு. பெயரிடல் தற்போதைய அடைவு

வினவல் உருப்படியின் பெயர்களைக் கொண்ட அட்டவணையை வழங்கும்.

கட்டமைப்புக்கு அருகில் தேர்வுநீங்கள் முக்கிய வார்த்தைகளைக் காணலாம் மாற்றத்திற்காக, அனுமதிக்கப்பட்டது, பல்வேறு, முதல்

அனுமதிக்கப்பட்டது— தற்போதைய பயனருக்கு உரிமை உள்ள அட்டவணையில் இருந்து பதிவுகளை மட்டுமே தேர்ந்தெடுக்கிறது.

பல்வேறு— இதன் விளைவாக நகல் கோடுகள் இருக்காது.

தேர்வு (வழக்கு)

பெரும்பாலும் இந்த வடிவமைப்பு புரோகிராமர்களால் குறைத்து மதிப்பிடப்படுகிறது. அதன் பயன்பாட்டிற்கான எடுத்துக்காட்டு:

தற்போதைய அடைவு.பெயர்,

எப்போது தற்போதைய அடைவு. சேவை பின்னர்

"சேவை"

எண்கணிதத்தைப் பார்ப்பது எப்படி என்று முடிவு

அடைவு. பெயரிடல் தற்போதைய அடைவு

எடுத்துக்காட்டு "உருப்படி வகை" புலத்தில் உரை மதிப்பை வழங்கும் - "தயாரிப்பு" அல்லது "சேவை".

எங்கே

1C வினவல் மொழியின் வடிவமைப்பு, பெறப்பட்ட தரவின் மீது தேர்வை திணிக்க உங்களை அனுமதிக்கிறது. கணினி சேவையகத்திலிருந்து எல்லா தரவையும் பெறுகிறது என்பதை நினைவில் கொள்க, அதன் பிறகு மட்டுமே இந்த அளவுருவின் அடிப்படையில் அது தேர்ந்தெடுக்கப்படும்.

தேர்வு
அடைவு.பெயர்
இருந்து
தற்போதைய அடைவு. தற்போதைய அடைவு என பெயரிடல்
எங்கே CurrentDirectory.Service = TRUE

எடுத்துக்காட்டில், "சேவை" பண்புக்கூறின் மதிப்பு "உண்மை" என அமைக்கப்பட்ட பதிவுகளை நாங்கள் தேர்ந்தெடுக்கிறோம். இந்த எடுத்துக்காட்டில், பின்வரும் நிபந்தனையுடன் நாம் பெறலாம்:

"சேவை எங்கே"

முக்கியமாக, முக்கிய சொல்லுக்குப் பின் வரும் வெளிப்பாடு "True" க்கு சமமாக இருக்கும் வரிசைகளைத் தேர்ந்தெடுக்கிறோம்.

வெளிப்பாடுகளில் நீங்கள் நேரடி நிபந்தனைகளைப் பயன்படுத்தலாம்:

எங்கே குறியீடு = "005215"

நிபந்தனைகளில் “VALUE()” ஆபரேட்டரைப் பயன்படுத்தி, 1C கோரிக்கையில் முன் வரையறுக்கப்பட்ட கூறுகள் மற்றும் கணக்கீடுகளுக்கான அணுகலைப் பயன்படுத்தவும்:

எங்கே பொருளின் வகை = மதிப்பு(எண்ணிக்கை.உருப்படி வகைகள்.தயாரிப்பு)

நேர மதிப்புகளை பின்வருமாறு குறிப்பிடலாம்:

எங்கே ரசீது தேதி > DATETIME(2012,01,01):

பெரும்பாலும், நிபந்தனைகள் கோரிக்கைக்கு அனுப்பப்பட்ட அளவுருக்களாக குறிப்பிடப்படுகின்றன:

1C இல் 267 வீடியோ பாடங்களை இலவசமாகப் பெறுங்கள்:

எங்கே பெயரிடல் குழு= &பெயரிடுதல் குழு

பண்புக்கூறு வகை கூட்டு வகையாக இருந்தால் நிபந்தனை விதிக்கப்படலாம்:

மதிப்புகள் அல்லது வரிசையின் பட்டியலிலிருந்து தேர்வை நீங்கள் கட்டுப்படுத்த வேண்டும் என்றால், நீங்கள் பின்வருவனவற்றைச் செய்யலாம்:

பதிவாளர் பி (&தேர்வுக்கான ஆவணங்களின் பட்டியல்) எங்கே உள்ளது.

இந்த நிலை சிக்கலானதாகவும் இருக்கலாம், இதில் பல நிபந்தனைகள் உள்ளன:

எங்கே ரசீது தேதி > தேதிநேரம்(2012,01,01) மற்றும் பெயரிடல் குழு= &பெயரிடுதல் குழு மற்றும் சேவை அல்ல

குழு மூலம்

முடிவைத் தொகுக்கப் பயன்படுத்தப்படும் 1C 8.2 வினவல் மொழியின் வடிவமைப்பு.

உதாரணத்திற்கு:

தேர்வு
பொருட்கள் மற்றும் சேவைகள் பொருட்களின் ரசீது,
SUM (சரக்கு சேவைகளின் ரசீது பொருட்கள்
SUM (சரக்கு சேவைகளின் ரசீது பொருட்கள்
இருந்து
சரக்குகள் மற்றும் சேவைகளின் ஆவணம்

குழு மூலம்
சரக்கு சேவைகள், சரக்குகளின் ரசீது

இந்தக் கோரிக்கையானது அனைத்து ரசீதுகளையும் தொகை மற்றும் அளவு ஆகியவற்றின் அடிப்படையில் சுருக்கமாகக் கூறுகிறது.

முக்கிய வார்த்தை தவிர SUMநீங்கள் மற்ற மொத்த செயல்பாடுகளைப் பயன்படுத்தலாம்: அளவு, வெவ்வேறு எண்ணிக்கை, அதிகபட்சம், குறைந்தபட்சம், சராசரி.

கொண்டவை

பெரும்பாலும் மறக்கப்படும் ஒரு வடிவமைப்பு, ஆனால் இது மிகவும் முக்கியமானது மற்றும் பயனுள்ளது. மொத்த செயல்பாட்டின் வடிவத்தில் தேர்வைக் குறிப்பிட இது உங்களை அனுமதிக்கிறது, இதை வடிவமைப்பில் செய்ய முடியாது எங்கே.

1C கோரிக்கையில் HAVING ஐப் பயன்படுத்துவதற்கான எடுத்துக்காட்டு:

தேர்வு
பொருட்கள் மற்றும் சேவைகள் பொருட்களின் ரசீது,
SUM (சரக்கு சேவைகளின் ரசீது பொருட்கள்
SUM (சரக்கு சேவைகளின் ரசீது பொருட்கள்
இருந்து
சரக்குகள் மற்றும் சேவைகளின் ஆவணம்

குழு மூலம்
பொருட்கள் மற்றும் சேவைகள் பொருட்களின் ரசீது

தொகை

எனவே 5 துண்டுகளுக்கு மேல் வந்த தயாரிப்புகளின் எண்ணிக்கையைத் தேர்ந்தெடுப்போம்.

பொருள்()

உதாரணத்திற்கு:

எங்கே வங்கி = மதிப்பு(Directory.Banks.EmptyLink)

எங்கே பெயரிடல் வகை = மதிப்பு (அடைவு. பெயரிடல் வகைகள். தயாரிப்பு)

எங்கே பொருளின் வகை = மதிப்பு(எண்ணிக்கை.உருப்படி வகைகள்.சேவை)

கோரிக்கையில் வகை

தரவு வகையை TYPE() மற்றும் VALUETYPE() செயல்பாடுகளைப் பயன்படுத்தி அல்லது லாஜிக்கல் ரெஃபரன்ஸ் ஆபரேட்டரைப் பயன்படுத்தி சரிபார்க்கலாம்.

எக்ஸ்பிரஸ்()

1C வினவல்களில் உள்ள எக்ஸ்பிரஸ் ஆபரேட்டர் தரவு வகைகளை மாற்ற பயன்படுகிறது.

தொடரியல்: எக்ஸ்பிரஸ்(<Выражение>எப்படி<Тип значения>)

இதைப் பயன்படுத்தி, நீங்கள் சரம் மதிப்புகளை தேதி அல்லது குறிப்பு மதிப்புகளை சரம் தரவுக்கு மாற்றலாம் மற்றும் பல.

நடைமுறை பயன்பாடுகளில், வரம்பற்ற நீள புலங்களை மாற்ற எக்ஸ்பிரஸ்() ஆபரேட்டர் அடிக்கடி பயன்படுத்தப்படுகிறது, ஏனெனில் வரம்பற்ற நீள புலங்களைத் தேர்ந்தெடுக்க முடியாது, குழுவாக்க முடியாது. அத்தகைய புலங்கள் மாற்றப்படாவிட்டால், நீங்கள் ஒரு பிழையைப் பெறுவீர்கள் வரம்பற்ற நீளம் மற்றும் பொருந்தாத வகைகளின் புலங்களை நீங்கள் ஒப்பிட முடியாது.

தேர்வு
தொடர்புத் தகவல். பொருள்,
எக்ஸ்பிரஸ்(தொடர்புத் தகவல். வரிசையாகப் பார்க்கவும்(150)) பார்வையில்
இருந்து
தகவல் பதிவு தகவல் தொடர்பு தகவல் எப்படி

குழு மூலம்
எக்ஸ்பிரஸ்(தொடர்புத் தகவல். வரிசையாகப் பிரதிநிதித்துவம்(150)),
தொடர்பு தகவல்.பொருள்

ISNULL (ISNULL)

பதிவில் உள்ள மதிப்பை சரிபார்க்கும் 1C வினவல் மொழியின் மிகவும் பயனுள்ள செயல்பாடு மற்றும் அது சமமாக இருந்தால் ஏதுமில்லை,இது உங்கள் சொந்த மதிப்புடன் அதை மாற்ற அனுமதிக்கிறது. மறைப்பதற்கு நிலுவைகள் மற்றும் விற்றுமுதல் ஆகியவற்றின் மெய்நிகர் அட்டவணைகளைப் பெறும்போது பெரும்பாலும் பயன்படுத்தப்படுகிறது ஏதுமில்லைமற்றும் தெளிவான 0 (பூஜ்யம்) போடவும்.

ISNULL(மாதத்திற்கு முந்தைய வரிகள்.AppliedFSS நன்மை, 0)

ISNULL இன் 1C வினவல் மொழியின் செயல்பாடு மதிப்பு இல்லாவிட்டால் பூஜ்ஜியத்தை வழங்கும், இது பிழையைத் தவிர்க்கும்.

சேரவும்

4 வகையான இணைப்புகள் உள்ளன: இடது, வலது, முழுமையான, உள்.

இடது மற்றும் வலது இணைப்பு

ஒரு குறிப்பிட்ட நிபந்தனையின் அடிப்படையில் இரண்டு அட்டவணைகளை இணைக்க இணைப்புகள் பயன்படுத்தப்படுகின்றன. எப்போது அம்சம் இடதுபுறம் சேரவும்முதலில் குறிப்பிடப்பட்ட அட்டவணையை முழுமையாக எடுத்து, இரண்டாவது அட்டவணையை நிபந்தனையுடன் பிணைக்கிறோம். நிபந்தனையுடன் பிணைக்க முடியாத இரண்டாவது அட்டவணையின் புலங்கள் மதிப்பால் நிரப்பப்பட்டுள்ளன ஏதுமில்லை.

1C கோரிக்கையில் இடதுபுறம் இணைவதற்கான எடுத்துக்காட்டு:

இது முழு அட்டவணையையும் திருப்பியளித்து, "கவுன்டர்பார்ட்டிகள். பெயர் = வங்கிகள். பெயர்" என்ற நிபந்தனை உள்ள இடங்களில் மட்டுமே "வங்கி" புலத்தை நிரப்பும். நிபந்தனை பூர்த்தி செய்யப்படாவிட்டால், வங்கி களம் அமைக்கப்படும் ஏதுமில்லை.

1C 8.3 மொழியில் வலது சேரவும்முற்றிலும் ஒத்த இடது இணைப்பு, ஒரு வித்தியாசத்தைத் தவிர: இல் இணைப்பு உரிமை"முக்கிய" அட்டவணை இரண்டாவது, முதல் அல்ல.

முழு இணைப்பு

முழு இணைப்புஇடது மற்றும் வலதுபுறத்தில் இருந்து வேறுபடுகிறது, இது இரண்டு அட்டவணைகளிலிருந்து அனைத்து பதிவுகளையும் காண்பிக்கும் மற்றும் நிபந்தனையின்படி இணைக்கக்கூடியவற்றை மட்டுமே இணைக்கிறது.

உதாரணத்திற்கு:

முழு இணைப்பு
அடைவு.வங்கிகள் எப்படி வங்கிகள்

மூலம்

சேர் ரெக்கார்ட்ஸ் நிபந்தனை பூர்த்தி செய்யப்பட்டால் மட்டுமே வினவல் மொழி இரண்டு அட்டவணைகளையும் முழுமையாக வழங்கும். இடது/வலது இணைப்பாக இல்லாமல், இரண்டு புலங்களில் NULL தோன்றுவது சாத்தியமாகும்.

உள் இணைப்பு

உள் இணைப்புகொடுக்கப்பட்ட நிபந்தனையின்படி இணைக்கப்படக்கூடிய பதிவுகளை மட்டுமே காண்பிக்கும்.

உதாரணத்திற்கு:

இருந்து
கோப்பகம். வாடிக்கையாளர்கள்

உள் இணைப்பு
அடைவு.வங்கிகள் எப்படி வங்கிகள்

மூலம்
வாடிக்கையாளர்கள்.பெயர் = வங்கிகள்.பெயர்

இந்த வினவல் வங்கி மற்றும் எதிர் கட்சி ஒரே பெயரைக் கொண்ட வரிசைகளை மட்டுமே வழங்கும்.

முடிவுரை

இது 1C 8 வினவல் மொழியிலிருந்து தொடரியல் ஒரு சிறிய பகுதி மட்டுமே;

; உள்ளமை வினவல்கள் (வளர்ச்சியில்).

பணி எண். 1: இடுகையிடப்பட்ட அனைத்து ஆவணங்களையும் தேர்ந்தெடுக்க வினவலைப் பயன்படுத்தவும் பொருட்கள் மற்றும் சேவைகளின் விற்பனை,

விளக்கம்: கட்டமைப்புகள் கணக்கியல் 2.0 / 3.0செயல்படுத்தல் வழங்கப்பட்ட விலைப்பட்டியலுக்கான இணைப்பைச் சேமிக்காது. இந்த ஆவணங்களுக்கிடையேயான இணைப்பு தலைகீழாக உள்ளது: விலைப்பட்டியலில் (விவரங்களில் ஒரு ஆவண அடிப்படை) இது தொடர்பான செயல்படுத்தல் பற்றிய குறிப்பு சேமிக்கப்படுகிறது. எனவே, எந்த செயலாக்கங்களில் விலைப்பட்டியல் இல்லை என்பதைப் புரிந்து கொள்ள, நீங்கள் வினவலில் இரண்டு அட்டவணைகளைப் பயன்படுத்த வேண்டும்: பொருட்கள் மற்றும் சேவைகளின் விற்பனைமற்றும் விலைப்பட்டியல் வழங்கப்பட்டது.

பணி எண் 2: கோப்பகத்தின் தரவுத்தளத்தில் சொல்லலாம் எதிர் கட்சிகளின் ஒப்பந்தங்கள்கூடுதல் தகவல் உருவாக்கப்பட்டது ஒத்திவைப்பு(சேமிப்பு இருப்பிடத்தை பதிவு செய்யவும் கூடுதல் தகவல்) 0 முதல் 10 நாட்கள் வரை தாமதத்துடன் குறிப்பிட்ட எதிர் தரப்பின் அனைத்து ஒப்பந்தங்களையும் தேர்ந்தெடுக்க வினவலைப் பயன்படுத்தவும்.

விளக்கம்: இந்த பணியில் இரண்டு அட்டவணைகளைப் பயன்படுத்தாமல் செய்ய முடியும், ஒரு நிபந்தனை இல்லை என்றால்: பூஜ்ஜிய ஒத்திவைப்புடன் ஒப்பந்தங்களின் தேர்வு. புள்ளி என்பது பதிவேட்டில் உள்ளது கூடுதல் தகவல்கூடுதல் தகவலுக்கான வெற்று மதிப்புகள் சேமிக்கப்படவில்லை, எனவே பூஜ்ஜிய ஒத்திவைப்புக்கான உள்ளீடுகள் இருக்காது. எனவே, நீங்கள் இந்த பதிவேட்டை கோப்பகத்துடன் இணைக்க வேண்டும் எதிர் கட்சிகளின் ஒப்பந்தங்கள், எந்தவொரு ஒப்பந்தத்திற்கும் ஒத்திவைப்புடன் பதிவு இல்லை என்றால், அது பூஜ்ஜியமாகும்.

புதிய தாவல்கள்: இணைப்புகள்

புதிய வழிமுறைகள்: 1C கோரிக்கையில் பூஜ்யத்தை சரிபார்க்கிறது.

பாடம் எண் 3 இன் தத்துவார்த்த பகுதி

1C வினவல் ஒரே ஒரு அட்டவணையைப் பயன்படுத்தினால், அதிலிருந்து மட்டுமே தரவு எடுக்கப்படும். ஆனால் நீங்கள் பல அட்டவணைகளிலிருந்து தரவைத் தேர்ந்தெடுக்க வேண்டும் என்றால், இந்த அட்டவணைகளுக்கு இடையில் நீங்கள் உறவுகளை அமைக்க வேண்டும். ஒரு தரவுத்தள அட்டவணையின் வரிசைகளை மற்றொரு அட்டவணையின் வரிசைகளுடன் ஒப்பிட்டு, வினவலை உருவாக்கும் போது, ​​அனைத்து வினவல் அட்டவணைகளிலிருந்தும் தேவையான தரவைக் கொண்டிருக்கும் இறுதி அட்டவணையைப் பெறுவதற்கு உறவுகள் அவசியம்.

ஒவ்வொரு குறிப்பிட்ட உறவும் இரண்டு அட்டவணைகளுக்கு இடையில் கட்டமைக்கப்பட்டுள்ளது, அவற்றில் ஒன்று அழைக்கப்படுகிறது விட்டு, மற்றவை சரி. மூன்று வகையான இணைப்புகள் உள்ளன:

  • உள் இணைப்பு- இணைப்பு நிபந்தனை பூர்த்தி செய்யப்பட்டால் மட்டுமே இடது அட்டவணையில் இருந்து ஒரு பதிவு வினவல் முடிவில் தோன்றும், இணைப்பு நிபந்தனை பூர்த்தி செய்யப்பட்டால் மட்டுமே வலது அட்டவணையில் இருந்து ஒரு பதிவு வினவல் முடிவில் தோன்றும்;
  • இடது இணைப்பு- எவ்வாறாயினும், வினவல் முடிவில் இடது அட்டவணையில் இருந்து ஒரு பதிவு சேர்க்கப்படும், இணைப்பு நிபந்தனை பூர்த்தி செய்யப்பட்டால் மட்டுமே வலது அட்டவணையில் இருந்து ஒரு பதிவு தேர்வில் சேர்க்கப்படும். இடதுபுறத்தின் அனலாக் ஆகும் வலது சேரவும்வலது அட்டவணையில் உள்ள தரவு எந்த சந்தர்ப்பத்திலும் முடிவில் சேர்க்கப்படும், நிபந்தனை பூர்த்தி செய்யப்பட்டால் மட்டுமே இடது அட்டவணையில் உள்ள தரவு. பொதுவாக வினவல் எழுதும் போது அது பயன்படுத்தப்படுகிறது இடது இணைப்பு, நீங்கள் சரியான ஒன்றைப் பயன்படுத்தினால், அடுத்த முறை நீங்கள் வினவலைத் திறக்கும் போது, ​​வினவல் வடிவமைப்பாளர் அதை இடதுபுறமாக மாற்றி, அட்டவணைகளை மாற்றுவார்;
  • முழு இணைப்பு- இடது அட்டவணையில் இருந்து ஒரு பதிவு முதலில் வினவல் முடிவில் தோன்றும், பின்னர் இணைப்பு நிபந்தனை பூர்த்தி செய்யப்பட்டால் மட்டுமே, வலது அட்டவணையில் இருந்து ஒரு பதிவு வினவல் முடிவில் முதலில் தோன்றும், பின்னர் இணைப்பு நிலை இருந்தால் மட்டுமே சந்தித்துள்ளது. இந்த வழக்கில், இதன் விளைவாக வரும் நகல் வரிசைகள் மாதிரியிலிருந்து விலக்கப்படுகின்றன.

கோட்பாட்டில், வினவல் அட்டவணையில் சேர்வது பயிற்சி பெறாத 1C புரோகிராமருக்குப் புரிந்துகொள்வது மிகவும் கடினம், ஆனால் எடுத்துக்காட்டுகளைப் படிக்கும்போது, ​​அனைத்து தெளிவற்ற புள்ளிகளும் தெளிவாகிவிடும்.

வினவல் வடிவமைப்பாளரில் உள்ள உறவுகள் தாவல்

வினவல் வடிவமைப்பாளரில், தாவலுக்குச் செல்லவும் இணைப்புகள். இது ஒரு அட்டவணை, இதில் அனைத்து வெவ்வேறு ஜோடி அட்டவணைகளுக்கும் தேவையான எண்ணிக்கையிலான இணைப்புகள் உருவாக்கப்படுகின்றன. அட்டவணையின் மேலே அமைந்துள்ள பொத்தான்களைப் பயன்படுத்தி நீங்கள் இணைப்புகளைச் சேர்க்கலாம், நீக்கலாம், நகலெடுக்கலாம் மற்றும் மாற்றலாம் (ஒவ்வொன்றையும் நாங்கள் விரிவாக பகுப்பாய்வு செய்ய மாட்டோம்).

புதிய இணைப்பைச் சேர்த்த பிறகு, அட்டவணையின் அனைத்து நெடுவரிசைகளையும் நிரப்ப வேண்டும். இணைப்பு அட்டவணையின் ஒவ்வொரு நெடுவரிசையையும் பார்ப்போம்:

  • அட்டவணை 1. இந்த நெடுவரிசையில் இடது தொடர்பு அட்டவணை தேர்ந்தெடுக்கப்பட்டுள்ளது. தாவலில் தேர்ந்தெடுக்கப்பட்ட அட்டவணைகளை மட்டுமே நீங்கள் பயன்படுத்த முடியும் அட்டவணைகள் மற்றும் புலங்கள்;
  • அனைத்து. இடது அட்டவணைக்கான எல்லா தரவையும் தேர்ந்தெடுக்க வேண்டும் என்றால், இந்த நெடுவரிசையில் கொடி வைக்கப்படும் (க்கு விட்டுஅல்லது முழுஇணைப்புகள்);
  • அட்டவணை 2. இந்த நெடுவரிசையில் சரியான இணைப்பு அட்டவணை தேர்ந்தெடுக்கப்பட்டது;
  • அனைத்து. சரியான அட்டவணைக்கான எல்லா தரவையும் தேர்ந்தெடுக்க வேண்டும் என்றால், இந்த நெடுவரிசையில் கொடி வைக்கப்படும் (க்கு சரிஅல்லது முழுஇணைப்புகள்);
  • இலவசம். இணைப்பு நிலையின் கைமுறை எடிட்டிங் பயன்முறைக்கு நீங்கள் மாறக்கூடிய கொடி;
  • இணைப்பு நிலை.இல் விவாதிக்கப்பட்ட நிபந்தனைகளைப் போலவே வினவல் மொழியில் உள்ள நிபந்தனை. இது ஒரு வெளிப்பாடு ஆகும், இது எப்போதும் இரண்டு மதிப்புகளில் ஒன்றை வழங்க வேண்டும்: உண்மைஅல்லது பொய்.பொதுவாக, ஒரு இணைப்பு நிலை மூன்று பகுதிகளைக் கொண்டுள்ளது:
    • இடது பக்கம். வழக்கமாக இடது அட்டவணையில் ஒரு புலம், ஆனால் அது வலது அட்டவணையில் ஒரு புலமாகவோ அல்லது அளவுருவாகவோ இருக்கலாம் (தனிப்பயன் நிலை எடிட்டிங் பயன்முறையில் மட்டும்);
    • ஒப்பீட்டு ஆபரேட்டர். இயல்பாக, "=", "<>», «<«, «>», «>=», «<=». Но в произвольном режиме редактирования можно использовать и некоторые другие, например «Между»;
    • வலது பகுதி. வழக்கமாக வலது அட்டவணையில் ஒரு புலம், ஆனால் அது இடது அட்டவணையில் ஒரு புலமாகவோ அல்லது ஒரு அளவுருவாகவோ இருக்கலாம் (தனிப்பயன் நிலை எடிட்டிங் பயன்முறையில் மட்டும்);

நிரப்புதல் மற்றும் திருத்துதல் தொடர்பு விதிமுறைகள், கடந்த பாடத்தில் விவாதிக்கப்பட்ட வழக்கமான நிபந்தனையைத் திருத்துவதைப் போலவே, இயல்புநிலையாக, நிபந்தனையின் வலது பகுதியில் ஒரு அளவுரு குறிப்பிடப்படவில்லை, ஆனால் சரியான அட்டவணையில் ஒரு புலம். இலவச பயன்முறையில், இலவச வெளிப்பாடு எடிட்டரும் கிடைக்கிறது.

பாடம் எண் 3 இன் நடைமுறை பகுதி

பாடத்தின் ஆரம்பத்தில் கொடுக்கப்பட்ட பிரச்சனைகளுக்கான தீர்வைப் பார்ப்போம்.

பணி எண் 1

வினவலுடன் இடுகையிடப்பட்ட அனைத்து ஆவணங்களையும் தேர்ந்தெடுக்கவும் பொருட்கள் மற்றும் சேவைகளின் விற்பனை,குறிப்பிட்ட காலத்திற்கு, விலைப்பட்டியல் உருவாக்கப்படவில்லை.

  • புதிய கோரிக்கையை உருவாக்குவோம்;
  • அட்டவணைகளைத் தேர்ந்தெடுப்போம் பொருட்கள் மற்றும் சேவைகளின் விற்பனைமற்றும் விலைப்பட்டியல் வழங்கப்பட்டதுநூலில் இருந்து ஆவணப்படுத்தல்;
  • மேஜையில் இருந்து பொருட்கள் மற்றும் சேவைகளின் விற்பனைஒரு புலத்தைத் தேர்ந்தெடுக்கவும் இணைப்பு;
  • தாவலுக்கு செல்வோம் நிபந்தனைகள்;
  • அத்தியாயத்தில் வயல்வெளிகள், நூலைத் திறப்போம் பொருட்கள் மற்றும் சேவைகளின் விற்பனை"+" பொத்தானைப் பயன்படுத்துதல்;
  • முட்டுகளை கண்டுபிடிப்போம் தேதிஅதை நிபந்தனைகள் பகுதிக்கு இழுத்து, ஒப்பீட்டு ஆபரேட்டரைத் தேர்ந்தெடுக்கவும் இடையில்எடுத்துக்காட்டாக, காலத்தின் ஆரம்பம் மற்றும் முடிவுக்கான அளவுருக்களைக் குறிக்கவும் காலத்தின் ஆரம்பம்மற்றும் காலத்தின் முடிவு;
  • பிரிவில் இருந்து வயல்வெளிகள்முட்டுகளை இழுப்போம் நடத்தப்பட்டது, நிபந்தனையுடன் ஒரு கொடியை வரிசையில் வைக்கவும் இலவசம்மேலும் நிபந்தனையின் கூடுதல் பகுதியை அழிக்கவும் “= &பாஸ்”;
  • தாவலுக்கு செல்வோம் தொடர்புகள்;
  • "சேர்" பொத்தானைப் பயன்படுத்தி புதிய இணைப்பை உருவாக்குவோம்;
  • துறையில் அட்டவணை 1ஒரு அட்டவணையைத் தேர்ந்தெடுக்கவும் பொருட்கள் மற்றும் சேவைகளின் விற்பனை(இது இடது அட்டவணையாக இருக்கும்) ;
  • சிக்கலைச் சரியாகத் தீர்க்க, நாங்கள் அனைத்து செயலாக்கங்களையும் பெற வேண்டும், அவற்றுடன் விலைப்பட்டியல்களை இணைக்க வேண்டும், மேலும் விலைப்பட்டியல் கிடைக்கவில்லை என்றால், கோரிக்கையின் விளைவாக செயல்படுத்தலைக் காண்பிக்க வேண்டும். இந்தப் பணியை இரண்டு துணைப் பணிகளாகப் பிரிப்போம்:
    • அனைத்து விற்பனைகளையும் தேர்ந்தெடுத்து, அவற்றின் விலைப்பட்டியலைக் கண்டறிய இணைப்பைப் பயன்படுத்துவோம்;
    • நிபந்தனையைப் பயன்படுத்தி, விலைப்பட்டியல் இல்லாத வரிகளை மட்டுமே தேர்ந்தெடுப்போம்;
  • முந்தைய பத்தியில் இருந்து நாம் பயன்படுத்த வேண்டும் என்று பின்வருமாறு இடது இணைப்பு, அனைத்து செயலாக்கங்களையும் தேர்ந்தெடுக்கும் பொருட்டு. அதனால, பத்தியில் கொடி போடுவோம் அனைத்து
  • துறையில் அட்டவணை 2ஒரு அட்டவணையைத் தேர்ந்தெடுக்கவும் விலைப்பட்டியல் வழங்கப்பட்டது(இது சரியான அட்டவணையாக இருக்கும்);
  • செயல்படுத்தலுக்கான இணைப்பு விலைப்பட்டியல் விவரங்களில் சேமிக்கப்பட்டுள்ளதால் டி ஆவணத் தளம்,இணைப்பு நிலையில் நாங்கள் தேர்வு செய்கிறோம்:
    • மைதானத்தின் இடது புறத்தில் பொருட்கள் மற்றும் சேவைகளின் விற்பனை இணைப்பு;
    • மைதானத்தின் வலது பக்கத்தில்: இன்வாய்ஸ் இன்வாய்ஸ் வழங்கப்பட்டது. ஆவணத் தளம்.
  • இணைப்பு அமைப்பு முடிந்தது;

இடது இணைப்புடன், இடது அட்டவணையின் ஒரு வரிசையில் இணைப்பு நிபந்தனைகளை பூர்த்தி செய்யும் வலது அட்டவணையின் ஒரு வரிசை இல்லை என்றால், இடது அட்டவணையின் கொடுக்கப்பட்ட வரிசைக்கான வலது வலது அட்டவணையின் அனைத்து புலங்களும் மதிப்பைக் கொண்டுள்ளன. ஏதுமில்லை. இடது அட்டவணையில் விலைப்பட்டியல் இல்லாத வரிசைகளை மட்டும் தேர்ந்தெடுக்க இதைப் பயன்படுத்துவோம்;

1C வினவல் மொழியில் ஒரு சிறப்பு தருக்க ஆபரேட்டர் உள்ளது, இது புலத்தில் மதிப்பு உள்ளதா என்பதைச் சரிபார்க்க உங்களை அனுமதிக்கிறது. ஏதுமில்லை, அதன் தொடரியல் <Поле>பூஜ்யமானது. இது ஒரு மதிப்பை வழங்குகிறது உண்மைபுலத்திற்கு மதிப்பு இருந்தால் ஏதுமில்லைமற்றும் பொய்- எதிர் வழக்கில்.

புல மதிப்பை இதன் மூலம் சரிபார்க்கவும் ஏதுமில்லைகுறிப்பிட்ட செயல்பாடு, கட்டுமானத்தைப் பயன்படுத்தி மட்டுமே சாத்தியமாகும் <Поле>= NULLஇந்த சோதனை சாத்தியமில்லை.

  • தாவலுக்கு செல்வோம் நிபந்தனைகள்;
  • அட்டவணை புலங்களில் ஒன்றை நிபந்தனைகள் பகுதிக்கு இழுக்கவும் விலைப்பட்டியல் வழங்கப்பட்டது, எடுத்துக்காட்டாக புலம் இணைப்பு;
  • வரிசையில் ஒரு கொடியை அமைக்கவும் இலவசம்புலத்திற்குப் பிறகு ஆபரேட்டரைச் சேர்க்கவும் பூஜ்யமானது, நிபந்தனையின் தேவையற்ற பகுதியை முன்பு அழித்துவிட்டது;

கோரிக்கை = புதிய கோரிக்கை; Request.SetParameter("StartPerid" , StartPerid); Request.SetParameter("காலத்தின் முடிவு", காலத்தின் முடிவு); Request.Text = "தேர்ந்தெடு | பொருட்கள் மற்றும் சேவைகளின் விற்பனை. இணைப்பு | இருந்து | ஆவணம் = சரக்குகள் மற்றும் சேவைகளின் சர்வதேச விற்பனை |

பணி எண். 2

  • புதிய கோரிக்கையை உருவாக்குவோம்;
  • வினவல் வடிவமைப்பாளரைத் தொடங்குவோம்;
  • தாவலில் அட்டவணைகள் மற்றும் புலங்கள்இரண்டு அட்டவணைகளைத் தேர்ந்தெடுப்போம்: எதிர் கட்சிகளின் ஒப்பந்தங்கள்நூலில் இருந்து அடைவுகள்மற்றும் கூடுதல் தகவல்நூலில் இருந்து தகவல் பதிவுகள்;
  • மேஜையில் இருந்து எதிர் கட்சிகளின் ஒப்பந்தங்கள்ஒரு புலத்தைத் தேர்ந்தெடுக்கவும் இணைப்பு;

நிபந்தனையின் படி, கோரிக்கை முடிவில் ஒரே ஒரு எதிரணியின் ஒப்பந்தங்கள் இருக்க வேண்டும், அதன் மதிப்பு ஒரு அளவுருவைப் பயன்படுத்தி கோரிக்கைக்கு அனுப்பப்படும். ஒப்பந்தம் சேர்ந்த எதிர் கட்சி புலத்தில் சேமிக்கப்படுகிறது உரிமையாளர்அடைவு எதிர் கட்சிகளின் ஒப்பந்தங்கள்.

  • தாவலுக்கு செல்வோம் நிபந்தனைகள். மேஜையில் இருந்து எதிர் கட்சிகளின் ஒப்பந்தங்கள்புலத்தை நிபந்தனைகள் பகுதிக்கு நகர்த்தவும் உரிமையாளர். நிபந்தனையின் வலது பக்கத்தில், நமக்குத் தேவையான எதிர் கட்சியை மாற்றும் அளவுருவின் பெயரை அமைப்போம், அதை அழைப்போம் எதிர் கட்சி;
  • 0 முதல் 10 வரை தாமதத்துடன் ஒப்பந்தங்களைத் தேர்ந்தெடுக்கும் பணியை இரண்டு துணைப் பணிகளாகப் பிரிப்போம்:
    • அனைத்து ஒப்பந்தங்களையும் தேர்ந்தெடுத்து, இணைப்புகளைப் பயன்படுத்தி, அவற்றின் ஒத்திவைப்புகளைக் கண்டறிய முயற்சிப்போம்;
    • நிபந்தனையைப் பயன்படுத்தி, எங்களுக்குத் தேவையான ஒத்திவைப்புகளுடன் ஒப்பந்தங்களை மட்டுமே தேர்ந்தெடுப்போம்;
  • ஒப்பந்தங்கள் மற்றும் கூடுதல் தகவல்களுக்கு இடையே இணைப்புகளை அமைப்போம். இணைப்புகள் தாவலுக்குச் சென்று புதிய இணைப்பைச் சேர்ப்போம்;
  • துறையில் அட்டவணை 1ஒரு அட்டவணையைத் தேர்ந்தெடுக்கவும் எதிர் கட்சிகளின் ஒப்பந்தங்கள்(இது இடது அட்டவணையாக இருக்கும்);
  • எங்களுக்கு அனைத்து ஒப்பந்தங்களும் தேவை என்பதால், நாங்கள் பயன்படுத்துவோம் இடது இணைப்பு.இடது அட்டவணையில் உள்ள All column-ல் ஒரு கொடியை வைப்போம்;
  • துறையில் அட்டவணை 2ஒரு அட்டவணையைத் தேர்ந்தெடுக்கவும் கூடுதல் தகவல்(இது சரியான அட்டவணையாக இருக்கும்);
  • ஒப்பந்தத்தின் குறிப்பு பரிமாணத்தில் சேமிக்கப்படுவதால் ஒரு பொருள்தகவல் பதிவு கூடுதல் தகவல்,இணைப்பு நிலையில் நாங்கள் தேர்வு செய்கிறோம்:
    • மைதானத்தின் இடது புறத்தில் ஒப்பந்ததாரர்களின் ஒப்பந்தங்கள்;
    • நிலையான ஒப்பீட்டு ஆபரேட்டரை விட்டுவிடுவோம் "=";
    • மைதானத்தின் வலது பக்கத்தில்: கூடுதல் தகவல்.பொருள்.

நாங்கள் ஒரு இணைப்பைச் சேர்த்துள்ளோம், அதனுடன் கூடுதல் அனைத்தையும் தேர்ந்தெடுப்போம். ஒவ்வொரு ஒப்பந்தம் பற்றிய தகவல். ஆனால் எங்களுக்கு ஒரு கூடுதல் தேவை என்பதால். கலவை - ஒத்திவைப்பு, நாம் இன்னும் ஒரு இணைப்பைச் சேர்க்க வேண்டும். இந்த வழக்கில் ஒத்திவைப்புகூடுதல் சொத்து ஆகும். கூடுதல் பண்புகள் வகை சிறப்பியல்பு வகைகளின் திட்டம் கூடுதல் விவரங்கள் மற்றும் தகவல்.பதிவேட்டில் கூடுதல் தகவல்கூடுதல் மதிப்பு பண்புகள் ஒரு பரிமாணத்தில் சேமிக்கப்படுகின்றன சொத்து. எனவே, ஒத்திவைப்புச் சொத்திற்கு மட்டுமே கூடுதல் தகவல்களைக் கட்டுப்படுத்தும் உறவைச் சேர்க்க வேண்டும்.

  • புதிய இணைப்பைச் சேர்ப்போம்;
  • துறையில் அட்டவணை 1ஒரு அட்டவணையைத் தேர்ந்தெடுக்கவும் எதிர் கட்சிகளின் ஒப்பந்தங்கள்;
  • ஒரே ஜோடி அட்டவணையில் நீங்கள் பல உறவுகளைக் கொண்டிருந்தால், அவர்களுக்காக நீங்கள் அதே சேரும் வகையைப் பயன்படுத்த வேண்டும் என்பதை அறிவது முக்கியம். எங்கள் விஷயத்தில், இது இடது இணைப்பு.அதனால, பத்தியில் கொடி போடுவோம் அனைத்து, இடது அட்டவணை தொடர்பான;
  • துறையில் அட்டவணை 2ஒரு அட்டவணையைத் தேர்ந்தெடுக்கவும் கூடுதல் தகவல்;
  • உறவு நிலையில் நாம் இடது அட்டவணை புலத்தைப் பயன்படுத்த வேண்டியதில்லை, அதற்குப் பதிலாக பரிமாணத்தில் ஒரு நிபந்தனையை விதிக்கிறோம் சொத்து, அதை கூடுதலாக சமன்படுத்துகிறது. சொத்து ஒத்திவைப்பு, அளவுருவைப் பயன்படுத்தி கோரிக்கைக்கு அனுப்பப்படும்;
  • கொடியை அமைப்போம் இலவசம்அர்த்தத்தில் உண்மைமேலும் பின்வரும் நிபந்தனை உரையை கைமுறையாக எழுதவும்: "கூடுதல் தகவல். சொத்து = &சொத்து தாமதம்";

  • இணைப்பு அமைப்பு முடிந்தது;

இப்போது எஞ்சியிருப்பது ஒத்திவைப்புத் தொகைக்கு ஒரு நிபந்தனை விதிக்க வேண்டும். 0 முதல் 10 வரையிலான இடைவெளியைப் பயன்படுத்துவதால், இடையில் ஒப்பீட்டு ஆபரேட்டரைப் பயன்படுத்துவது அவசியம். பூஜ்ஜிய பேக்ஆஃப் கூடுதல் தகவலில் சேமிக்கப்படாததால், இந்த வழக்கில் இணைக்கப்படும் போது, ​​அனைத்து பதிவு புலங்களும் மதிப்பை வழங்கும் ஏதுமில்லை. ஒரு நிலையில் உள்ள மதிப்பை மாற்றுவதற்காக ஏதுமில்லை 0 க்கு, வினவல் மொழி செயல்பாட்டைப் பயன்படுத்துவோம் ISNULL(<Выражение1>, <Выражение2>) . செயல்பாடு திரும்பும் வெளிப்பாடு1, சமமாக இல்லாவிட்டால் ஏதுமில்லைமற்றும் வெளிப்பாடு2இல்லையெனில்.

  • தாவலுக்கு செல்வோம் நிபந்தனைகள்வடிவமைப்பாளரைக் கேட்டு புதிய நிபந்தனையைச் சேர்க்கவும்;
  • அதில் கொடி அமைப்போம் இலவசம்மற்றும் இலவச வெளிப்பாடு ஆசிரியர் செல்ல;
  • வினவல் மொழி செயல்பாடுகள் பிரிவில் கிளையை விரிவுபடுத்துவோம் செயல்பாடுகள் -> பிற செயல்பாடுகள்;
  • வெளிப்பாடுகள் பிரிவில் ஒரு செயல்பாட்டை இழுப்போம் ISNULL;
  • இதன் விளைவாக கட்டுமானத்திற்குப் பிறகு, ஒப்பீட்டு ஆபரேட்டருக்கு இடையில் உள்ளிடுவோம் மற்றும் இடைவெளியை அமைப்போம்: 0 மற்றும் 10;
  • சரி என்பதைக் கிளிக் செய்யவும், நிபந்தனை தயாராக உள்ளது;

நீங்கள் கடைசியாக செய்ய வேண்டியது, கோரிக்கை புலங்களில் ஒத்திவைப்பு மதிப்பைக் காண்பிப்பதாகும். அதற்கு பதிலாக ஏதுமில்லைமதிப்பு 0 காட்டப்பட்டது, நாங்கள் இலவச வெளிப்பாடு எடிட்டர் மற்றும் செயல்பாட்டையும் பயன்படுத்துகிறோம் ISNULL.

  • தாவலுக்கு செல்வோம் அட்டவணைகள் மற்றும் புலங்கள்மற்றும் ஒரு புதிய புலத்தைச் சேர்க்கவும்;
  • திறக்கும் இலவச வெளிப்பாடு எடிட்டரில், செயல்பாட்டைத் தேர்ந்தெடுக்கவும் ISNULL;
  • எக்ஸ்பிரஷன் 1 க்கு பதிலாக, கூடுதல் தகவல்.மதிப்பு புலத்தை செருகவும், எக்ஸ்பிரஷன் 2 க்கு பதிலாக 0 ஐ செருகவும்;
  • சரி என்பதைக் கிளிக் செய்யவும், புலம் தயாராக உள்ளது;

இதன் விளைவாக, பின்வரும் உரையுடன் ஒரு கோரிக்கையைப் பெறுவோம்:

கோரிக்கை = புதிய கோரிக்கை; Query.SetParameter("PropertyDelay", PropertyProperty); Request.SetParameter("கணக்கு", கணக்கு); Query.Text = "தேர்ந்தெடுக்கவும் .இணைப்பு = கூடுதல் தகவல் |

1C 8 வினவல் மொழி பற்றிய கட்டுரைகளையும் படிக்கவும்.

ஒரே நேரத்தில் பல அட்டவணைகளிலிருந்து தரவைப் பார்க்க விரும்பும்போது, ​​அதாவது. பல அட்டவணைகளை ஒன்றில் சேகரிக்க, அட்டவணைகள் மற்றும் அவற்றுக்கிடையேயான உறவுகளை இணைக்கும் கருத்து எழுகிறது. நான்கு வகையான இணைப்புகள் உள்ளன:

  • விட்டு;
  • சரி,
  • உள்;
  • முழுமை.

ஒரு சுருக்க உதாரணத்தைப் பயன்படுத்தி ஒவ்வொரு வகையையும் பார்ப்போம். 2 அட்டவணைகள் உள்ளன, முதலில் உருப்படியைப் பற்றிய விளக்கமான தகவல்களைச் சேமிக்கிறோம், இரண்டாவதாக அதன் இருப்புகளைப் பற்றி:

இந்த அட்டவணையில் இருந்து ஒன்றைப் பெறுவதற்கு, எந்தெந்தப் புலங்களை, எந்த நிபந்தனை மற்றும் வகை மூலம் இணைப்போம் என்பதை வெளிப்படையாகக் குறிப்பிட வேண்டும். இப்போது அது இன்னும் தெளிவாகிவிடும்.

இடது இணைப்பு

இடதுபுற இணைப்பைப் பயன்படுத்தி, இணைப்பு நிலையைப் பூர்த்தி செய்யும் அனைத்து பதிவுகளையும் இடது அட்டவணையிலிருந்தும், வலதுபுறத்தில் உள்ள பதிவுகளிலிருந்தும் அனைத்து பதிவுகளையும் பார்க்க விரும்புகிறோம் என்று கணினியிடம் கூறுகிறோம். தயாரிப்பு புலத்தின் மூலம் அட்டவணைகளை சம நிலையில் இணைக்கிறோம் என்று வைத்துக்கொள்வோம், பிறகு ஒரு அட்டவணையைப் பெறுவோம்:

கோரிக்கை.உரை =
"தேர்ந்தெடு
| பெயரிடல்.தயாரிப்பு,
| பெயரிடல். நிறம் AS வண்ணம் பெயரிடல்,
| எஞ்சியிருக்கிறது. நிறம் எஞ்சியிருக்கும் வண்ணம்,
| இருப்புக்கள்.அளவு
|இருந்து

";

மீதமுள்ள அட்டவணையில் இருந்து நாற்காலிக்கு எந்தப் பொருத்தமும் இல்லை, எனவே புலங்கள் NULL மதிப்புகளால் நிரப்பப்பட்டன, அவை ISNULL செயல்பாட்டின் மூலம் செயலாக்கப்பட வேண்டும், 1C 8 வினவல் மொழி செயல்பாடுகளைப் பார்க்கவும்.

இடது இணைப்பானது தோராயமாக ஒரு லூப்பில் உள்ள லூப் போல வேலை செய்கிறது - இது இடது அட்டவணையில் இருந்து முதல் பதிவை எடுத்து, இணைப்பு நிலை திருப்திகரமாக இருப்பதை உறுதிசெய்ய வலது அட்டவணையில் இருந்து அனைத்து பதிவுகளையும் இயக்குகிறது. பின்னர் இரண்டாவது பதிவு இடது அட்டவணையில் இருந்து எடுக்கப்பட்டது, மற்றும் பல. திடீரென்று சரியான அட்டவணையில் இருந்து பல பதிவுகள் இணைப்பு நிலையை பூர்த்தி செய்தால், பல வரிசைகள் விளைவாக அட்டவணையில் சேர்க்கப்படும் (நீங்கள் பார்க்க முடியும் என, விளைவாக அட்டவணை தகவல் இல்லை, தரவு பிரதிபலிக்கவில்லை). உண்மையான சாராம்சம், எனவே இந்த அட்டவணைகளை இரண்டு புலங்களில் இணைப்பது நல்லது: தயாரிப்பு மற்றும் வண்ணம், இந்த நேரத்தில் மட்டுமே நாங்கள் NULLகளைக் கையாள்வோம்:

கோரிக்கை.உரை =
"தேர்ந்தெடு
| பெயரிடல்.தயாரிப்பு,
| பெயரிடல். நிறம்,
| ISNULL(மீதமுள்ள அளவு, 0) AS அளவு
|இருந்து
| பெயரிடல் AS பெயரிடல்
| LEFT JOIN எஞ்சியவை மீதமுள்ளவை
| Software Nomenclature.Product = Remaining.Product

சரியான இணைப்பு

வலது இணைப்பு அடிப்படையில் இடதுபுறத்தில் இருந்து வேறுபட்டதல்ல. நீங்கள் அட்டவணைகளை மாற்றினால், வலதுபுற இணைப்பானது இடது இணைப்பாக மாறும்;

உள் இணைப்பு

உள் இணைப்பைப் பயன்படுத்தி, வலது அட்டவணை மற்றும் இடதுபுறம் இரண்டிலிருந்தும் இணைப்பு நிலையைப் பூர்த்தி செய்யும் பதிவுகளை மட்டுமே பார்க்க விரும்புகிறோம் என்று கணினியிடம் கூறுகிறோம். இதனால், விளைந்த பதிவுகளின் எண்ணிக்கை, இணைப்பில் பங்கேற்கும் குறுகிய அட்டவணையின் பதிவுகளின் எண்ணிக்கையை விட குறைவாகவோ அல்லது சமமாகவோ இருக்கும். எங்கள் அட்டவணைகளின் தயாரிப்பு மற்றும் வண்ணப் புலங்களில் உள் இணைப்பினைப் பயன்படுத்துவோம்:

கோரிக்கை.உரை =
"தேர்ந்தெடு
| பெயரிடல்.தயாரிப்பு,
| பெயரிடல். நிறம்,
| மீதமுள்ளவை. அளவு AS அளவு
|இருந்து
| பெயரிடல் AS பெயரிடல்
| INNER JOIN எஞ்சியவை எஞ்சியவைகளாக
| Software Nomenclature.Product = Remaining.Product
| மற்றும் பெயரிடல்.நிறம் = மீதமுள்ள.நிறம்";

முழு இணைப்பு

ஒரு முழு இணைப்பானது இரண்டு அட்டவணையில் இருந்தும் அனைத்து பதிவுகளிலும் விளையும், இணைப்பு நிலையை திருப்திப்படுத்தும் பதிவுகள் இணைக்கப்படும், இணைப்பு நிலையை திருப்திப்படுத்தாத பதிவுகள் வினவல் முடிவில் முடிவடையும், ஆனால் சில NULL புலங்களுடன். முழுமையானது என்பது ஒன்றில் இடது மற்றும் வலது இணைப்புகளைப் போன்றது.

இந்த தலைப்பில் பல சிக்கல்கள் இருக்கலாம், அவற்றில் ஒன்றைத் தீர்க்க முயற்சிப்போம். எங்கள் நிறுவனம் 2 தளபாடங்கள் தொழிற்சாலைகளின் டீலர்: "ஜர்யா" மற்றும் "ராஸ்வெட்". ஒவ்வொரு தொழிற்சாலைகளின் விலையும் கொண்ட வகைப்படுத்தல் வெவ்வேறு அட்டவணைகளில் சேமிக்கப்படுகிறது. ஒரு ஒற்றை விலை பட்டியலை உருவாக்குவது அவசியம், மேலும் அதில் தயாரிப்புகளை குறைந்தபட்ச விலையில் சேர்க்க வேண்டும்:

அனைத்து துறைகளின் தேர்வுடன் முழு இணைப்பிற்கு விண்ணப்பிக்கலாம், நாங்கள் தயாரிப்பு மூலம் இணைப்போம்:

கோரிக்கை.உரை =
"தேர்ந்தெடு
| பெயரிடல் Zarya. தயாரிப்பு AS தயாரிப்பு Zarya,
| பெயரிடல் Zarya. விலை AS Zarya,
| பெயரிடல் Rassvet தயாரிப்பு AS தயாரிப்பு,
| பெயரிடல்Rassvet. விலை ராஸ்வெட் என விலை
|இருந்து

இது நமக்குத் தேவையானது அல்ல, தயாரிப்புத் துறையை ஒன்றாக இணைத்து, NULLகளை செயலாக்குவோம்:

கோரிக்கை.உரை =
"தேர்ந்தெடு
// ISNULL கட்டுமானம் வினவல் மொழி செயல்பாடுகள் பிரிவில் விவாதிக்கப்பட்டது
//விலை வரையறுக்கப்படவில்லை என்றால், அதை துவக்கவும்
//ஏன் 1000000 கீழே விளக்கத்தைப் பார்க்கவும்
| ISNULL(பெயர்ச்சொல் Zarya. விலை, 1000000) AS PriceZarya,
| ISNULL(NomenclatureRassvet.Price, 1000000) AS PriceRassvet
|இருந்து
| பெயரிடல் Zarya AS பெயரிடல் Zarya
| முழு இணைப்பு பெயரிடல் டான் என பெயரிடுதல் டான்
| மென்பொருள் NomenclatureZarya.Product = NomenclatureDawn.Product";

குறைந்தபட்ச விலையைத் தேர்ந்தெடுப்பது மட்டுமே மீதமுள்ளது. இறுதி கோரிக்கை உரை இப்படி இருக்கும்:

கோரிக்கை.உரை =
"தேர்ந்தெடு
| ISNULL(NomenclatureZarya.Product, NomenclatureDawn.Product) தயாரிப்பு,
| தேர்வு
| அங்கு இருக்கும் போது NULL(NomenclatureZarya.Price, 1000000) > ISNULL(NomenclatureRassvet.Price, 1000000)
| பிறகு ISNULL(NomeclatureRassvet.Price, 1000000)
| ELSE ISNULL(பெயர்ச்சொல் Zarya. விலை, 1000000)
| விலையில் முடிவு
|இருந்து
| பெயரிடல் Zarya AS பெயரிடல் Zarya
| முழு இணைப்பு பெயரிடல் டான் என பெயரிடுதல் டான்
| மென்பொருள் NomenclatureZarya.Product = NomenclatureDawn.Product";

விலை வரையறுக்கப்படவில்லை என்றால் (NULL), அது சில மதிப்புடன் துவக்கப்பட வேண்டும், இல்லையெனில் அதிக/குறைவுக்கான ஒப்பீட்டு செயல்பாடு பிழையுடன் தோல்வியடையும். ஒப்பீட்டு செயல்பாட்டில் "இழந்துவிடும்" என்று நம்பத்தகாத பெரிய தொகையுடன் விலையைத் தொடங்குகிறோம், ஏனெனில் சிக்கலின் நிலைமைகளின்படி நாங்கள் குறைந்த விலையைத் தேர்ந்தெடுக்கிறோம்.

← 1C வினவல் மொழியின் செயல்பாடுகள் 8 | 1C 8 வினவல்களில் இணைகிறது →

ஆசிரியர் தேர்வு
கடன் ஒப்பந்தம் கடன் அல்லது கடன் ஒப்பந்தத்திலிருந்து எவ்வாறு வேறுபடுகிறது மற்றும் திட்டத்தில் ஒரு பணியாளருக்கு பணம் வழங்குவதை எவ்வாறு சரியாக முறைப்படுத்துவது...

1C கணக்கியல் 8.3 பண்ட அறிக்கை 1C கணக்கியல் 8.3 திட்டத்தில் உள்ள கமாடிட்டி அறிக்கையானது TORG-29,...

இந்தக் கட்டுரையில், 1C 8.3 இல் தனிநபர் வருமான வரியைக் கணக்கிடுதல் மற்றும் நிறுத்திவைத்தல் மற்றும் படிவங்கள் 2-NDFL பற்றிய அறிக்கைகளைத் தயாரித்தல் மற்றும்...

கணக்கியலில் தவறான பதிவு செய்யப்பட்டால் என்ன செய்வது? இதைச் செய்ய, அத்தகைய பதிவுகளை சரிசெய்ய சிறப்பு நுட்பங்களைப் பயன்படுத்தலாம்.
வணிகத்திற்காக போலி மென்பொருளை வாங்க மற்றும் பயன்படுத்த மறுப்பதற்கு குறைந்தது 5 காரணங்கள் உள்ளன. இவை: பொருளாதாரம் அல்லாத அபாயங்கள்:...
வர்த்தக நிர்வாகத்தின் உதாரணத்தைப் பயன்படுத்தி நிரலில் உள்ள பொருட்களை எவ்வாறு அசெம்பிள் செய்வது மற்றும் பிரிப்பது? தேவை இருக்கிறது என்று நடக்கும்...
இந்தக் கட்டுரையில், 1C 8.3 இல் தனிநபர் வருமான வரியைக் கணக்கிடுதல் மற்றும் நிறுத்திவைத்தல் மற்றும் படிவங்கள் 2-NDFL பற்றிய அறிக்கைகளைத் தயாரித்தல் மற்றும்...
7.7 மற்றும் 8 பதிப்புகளுக்கு இடையே உள்ள முக்கிய வேறுபாடுகளில் 1C வினவல் மொழியும் ஒன்றாகும். 1C நிரலாக்கத்தைக் கற்றுக்கொள்வதில் மிக முக்கியமான புள்ளிகளில் ஒன்று...
KUDIR என்பது அனைத்து நிறுவனங்கள் மற்றும் தனிப்பட்ட தொழில்முனைவோரால் பராமரிக்கப்பட வேண்டிய வருமானம் மற்றும் செலவுகளின் புத்தகம் (ரஷ்ய கூட்டமைப்பின் வரிக் குறியீட்டின் பிரிவு 346.24). வரியுடன் புத்தகத்தை சான்றளிக்கவும்...
புதியது
பிரபலமானது