- Where Developers Learn, Share, & Build Careers


मेरे पास इस तरह से दो टेबल हैं

FLUX_ISU_EQU < पूर्व> <कोड> आईडी संख्या (38,0) EQU_CODE VARCHAR2 (10 BYTE) DATE_DERNIERE_MODIF DATE

FLUX_ISU_EQU_AFF_TAB

  आईडी NUMBER (38,0) EQU_ID NUMBER (38,0) DATE_DEBUT दिनांक DATE_FIN DATE TYPE_EQU VARCHAR2 (10 BYTE) CODE_REGION VARCHAR2 (10 BYTE)   

मेरे पास इस तरह की तालिकाएँ हैं: < / P>

FLUX_ISU_EQU

यहां छवि विवरण दर्ज करें

FLUX_ISU_EQU_AFF_TAB

छवि विवरण दर्ज करें यहाँ

मेरे पास इस तरह की एक प्रक्रिया है: <पूर्व> प्रक्रिया DONNEES_IS_PRESENT (संख्या में समान_आईड, ब्याचारे में आईचेक डनॉनेज) एनबीईक्वेंसी संख्या; BEGIN nbEquipement: = 0; Flux_isu_equ_aff_tab fieat से nbEquipement में गिनती (*) का चयन करें, flux_isu_equ fie जहां fieat.EQU_ID = fie.id और fie.id = equ_id; यदि nbEquipement = 0 तब होता हैकॉक डोनन: = गलत; Pk_Compas_Util.LOG_ERROR ('Pk_Compas_Flux_Isu.IMPORT_EQUIPEMENT_EAI', 'IMPORT_EQUIPEMENT_EAI', इक्विएड, नल, नाउल, 'एकिने पत्राचार डाल लो' 'आईडी' '' equ_id || '' 'डैनस ला टेबल FLUX_ISU_EQU_AFF_TAB', NULL); अगर अंत; समाप्त;

इसलिए, जब मैं nbEquipement = 1 के बजाय मेरी प्रक्रिया nbEquipement = 3 निष्पादित करता हूं।

क्यों ..?

पुनश्च: जब मैं Do

  select count (*) flux_isu_equ_aff_tab fieat से, flux_isu_equ fie जहां fieat.EQU_ID = fie.id और fie.id = 2;   

मेरे पास एक परिणाम है

thx।

निम्नलिखित क्वेरी में

  nbEquipement में flux_isu_equ_aff_tab fieat से count (*) चुनें, flux_isu_equ fie जहां fieat.EQU_ID = fie.id और fie.id = equ_id;   

equ_id तालिका के क्षेत्र को संदर्भित करता है। चूंकि FLUX_ISU_EQU_AFF_TAB में कॉलम equ_id है और इसके लिए आपके पास एक ऐसा जुड़ना है जो इस तरह दिखता है। fieat.EQU_ID = fie.id

आपको क्या करना चाहिए बहुत सरल है बस IN_EQU_ID या PARAM_EQU_ID या तो चर का नाम बदलें। और आपकी क्वेरी इस तरह दिखनी चाहिए:

  nbEquipement में flux_isu_equ_aff_tab fieat, flux_isu_equ fie में select count (*) जहां fieat.EQU_ID = fie.id और fie.id = in_equ_id;   

संग्रहीत कार्यविधि इस तरह दिखनी चाहिए:

  प्रक्रिया की गई प्रक्रियाओं को बनाने या बदलने के लिए (संख्या में in_equ_id, बुलेटिन में isCheckDonnees) nbEquipement NUMBER; BEGIN nbEquipement: = 0; Flux_isu_equ_aff_tab fieat से nbEquipement में गिनती (*) का चयन करें, flux_isu_equ fie जहां fieat.EQU_ID = fie.id और fie.id = in_equ_id; यदि nbEquipement = 0 तब होता हैकॉक डोनन: = गलत; --Pk_Compas_Util.LOG_ERROR ('Pk_Compas_Flux_Isu.IMPORT_EQUIPEMENT_EAI', 'IMPORT_EQUIPEMENT_EAI', इक्विएड, नल, नाउल, 'एकिने पत्राचार को' एल 'आईडी' '' 'equ_id ||' '' डैनस ला टेबल FLUX_ISU_EQU_AFF_TAB ', NULL); अगर अंत; समाप्त;   

मुझे लगता है कि यह सबसे अच्छा है अगर आपके पास अपने सभी मापदंडों का प्रयोग IN_ में है या ऐसा कुछ है, ताकि आपके क्षेत्र के नामों के रूप में आपके मानदंडों के समान नाम न हों

Comments

Popular posts from this blog

Python SQLAlchemy:AttributeError: Neither 'Column' object nor 'Comparator' object has an attribute 'schema' -

java - How not to audit a join table and related entities using Hibernate Envers? -

mongodb - CakePHP paginator ignoring order, but only for certain values -