Hello, Konstantin! You wrote on Mon, 24 Apr 2006 11:24:45 +0400:
KRB> îÅ ÐÏÄÅÌÉÔÓÑ ÌÉ ÍÎÏÇÏÕ×ÁÖÁÅÍÙÊ ALL Ó×ÏÉÍÉ ÚÁÄÁÞËÁÍÉ ÎÁ ÔÅÍÕ: "ÞÔÏ KRB> ÄÏÌÖÅÎ ÚÎÁÔØ ËÁÎÄÉÄÁÔ, ÓÞÉÔÁÀÝÉÊ ÓÅÂÑ ÓÐÅÃÉÁÌÉÓÔÏÍ ÐÏ SQL". CREATE TABLE AGENT ( ID INTEGER NOT NULL, NAME1 VARCHAR(60) ); CREATE TABLE GRUPS ( ID INTEGER NOT NULL, NAME VARCHAR(100) COLLATE PXW_CYRL ); CREATE TABLE TOVAR ( ID INTEGER NOT NULL, IDGRUP integer; NAME1 VARCHAR(150) default, COST_ZAK NUMERIC(15,4) default 0, /*ÃÅÎÁ ÚÁËÕÐËÉ*/ REAL_SKLAD NUMERIC(15,4) /*ËÏÌ×Ï ÎÁ ÓËÌÁÄÅ*/ ); CREATE TABLE DOCS_TYPE ( ID INTEGER NOT NULL, NAME VARCHAR(80) COLLATE PXW_CYRL, OPER INTEGER /*-1, 0, 1*/ ); insert into DOCS_TYPE ... 1 ðÒÉÈÏÄ 1 2 òÁÓÈÏÄ -1 3 òÁÓÈÏÄ ÄÌÑ ÄÒÕÚÅÊ -1 4 ïÔÄÁÔØ ÎÁ ÒÅÁÌÉÚÁÃÉÀ -1Ü 5 ðÒÉÈÏÄ ÄÅÎÅÇ 1 6 óÞÅÔÁ-ÆÁËÔÕÒÙ 0 CREATE TABLE DOCS ( ID INTEGER NOT NULL, IDAGENTS INTEGER NOT NULL, IDTIP INTEGER NOT NULL, SUM_ZAK NUMERIC(15,4), /* äÅÎÏÒÍÁÌÉÚÁÃÉÑ */ DATABEG DATE default "now" NOT NULL ); CREATE TABLE SPECDOCS ( IDDOCS INTEGER NOT NULL, IDTOVAR INTEGER NOT NULL, IDGRUOP integer; /* äÅÎÏÒÍÁÌÉÚÁÃÉÑ */ COST_ZAK NUMERIC(15,4), KOL NUMERIC(15,4) default 0 ); áÇÅÎÔÏ× - 300; ÷ÓÅÇÏ ÄÏËÕÍÅÎÔÏ× - 50 000 (ÚÁ ÔÒÉ ÇÏÄÁ) óÐÅÃÉÆÉËÁÃÉÑ - 150 000 çÒÕÐÐ - 20 ôÏ×ÁÒ - 5000 (ÐÏ 250 × ÇÒÕÐÐÅ) ïÔÞÅÔÙ ÏÂÙÞÎÏ ÚÁ ÐÏÓÌÅÄÎÉÊ ÍÅÓÑà - Ë×ÁÒÔÁÌ 1. ðÏ ÄÁÎÎÙÍ ÇÒÕÐÐÁÍ ×ÙÄÁÔØ ÐÒÏÄÁÖÉ ÚÁ ÐÅÒÉÏÄ ================================= îÁÚÁ×ÎÉÅ ÇÒÕÐÐÙ ôÏ×ÁÒ1 ËÏÌ-×Ï ÓÕÍÍÁ ÓÅÊÞÁÓ_ÎÁ_ÓËÌÁÄÅ ================================= 2. óÕÍÍÙ ÐÏ ×ÓÅÍ ÄÏËÕÍÅÎÔÁÍ ÚÁ ÐÅÒÉÏÄ ================================= îÁÚ×ÁÎÉÅ ÔÉÐÁ ÄÏËÕÍÅÎÔÁ ÓÕÍÍÁ ðÒÉÈÏÄ 40000 òÁÓÈÏÄ 35355 òÁÓÈÏÄ ÄÌÑ ÄÒÕÚÅÊ 345345 ïÔÄÁÔØ ÎÁ ÒÅÁÌÉÚÁÃÉÀ 345345 ðÒÉÈÏÄ ÄÅÎÅÇ 345345 óÞÅÔÁ-ÆÁËÔÕÒÙ 3453450 ================================= 3. ïÓÔÁÔËÉ ÐÏ ÔÏ×ÁÒÁÍ ÎÁ ÌÀÂÏÊ ÄÅÎØ ================================= îÁÚÁ×ÎÉÅ ÇÒÕÐÐÙ 1 ôÏ×ÁÒ1 ËÏÌ-×Ï ôÏ×ÁÒ2 ËÏÌ-×Ï ôÏ×ÁÒ3 ËÏÌ-×Ï îÁÚÁ×ÎÉÅ ÇÒÕÐÐÙ 3 ôÏ×ÁÒ14 ËÏÌ-×Ï ôÏ×ÁÒ24 ËÏÌ-×Ï ôÏ×ÁÒ34 ËÏÌ-×Ï ================================= 4. ðÏ ×ÙÂÒÁÎÎÙÍ ÁÇÅÎÔÁÍ ×ÙÄÁÔØ ×ÓÅ ÄÏËÕÍÅÎÔÙ ÚÁ ÐÅÒÉÏÄ ================================= áÇÅÎÔ1 ðÒÉÈÏÄ 1 ÓÕÍÍÁ ðÒÉÈÏÄ 2 ÓÕÍÍÁ ïÔÄÁÔØ ÎÁ ÒÅÁÌÉÚÙÃÉÀ ÓÕÍÍÁ áÇÅÎÔ2 ðÒÉÈÏÄ 1 ÓÕÍÍÁ ðÒÉÈÏÄ 2 ÓÕÍÍÁ ïÔÄÁÔØ ÎÁ ÒÅÁÌÉÚÙÃÉÀ ÓÕÍÍÁ ================================= 5. ðÏ ×ÙÂÒÁÎÎÙÍ ÁÇÅÎÔÁÍ ×ÙÄÁÔØ ÐÒÏÄÁÖÉ ÔÏ×ÁÒÏ× ÚÁ ÐÅÒÉÏÄ ================================= áÇÅÎÔ1 ôÏ×ÁÒ1 ËÏÌ-×Ï ÓÕÍÍÁ ôÏ×ÁÒ2 ËÏÌ-×Ï ÓÕÍÍÁ ôÏ×ÁÒ3 ËÏÌ-×Ï ÓÕÍÍÁ áÇÅÎÔ2 ôÏ×ÁÒ1 ËÏÌ-×Ï ÓÕÍÍÁ ôÏ×ÁÒ2 ËÏÌ-×Ï ÓÕÍÍÁ ôÏ×ÁÒ3 ËÏÌ-×Ï ÓÕÍÍÁ ================================= äÌÑ ÄÕÛÉ: =========================================== åÓÔØ ÔÁÂÌÉÃÙ CREATE TABLE GROUP( GROUP_CODE INTEGER NOT NULL, ... ÍÎÏÇÏ ÞÅÇÏ ) CREATE TABLE GROUP_MEMBER ( GROUP_CODE INTEGER NOT NULL, MEMBERS_NO SMALLINT NOT NULL, ... ÅÝÅ ÍÎÏÇÏ.. ) ÔÏ ÅÓÔØ - ÔÁÂÌÉÃÁ ÇÒÕÐÐ - ÏÄÎÏ ÚÁÐÉÓØ ÎÁ ÇÒÕÐÐÕ É ÔÁÂÌÉÃÁ ÕÞÁÓÔÎÉËÏ× ÇÒÕÐÐ - ÏÄÎÁ ÚÁÐÉÓØ ÎÁ ÕÞÁÓÔÎÉËÁ. ëÁË ÏÄÎÉÍ ÚÁÐÒÏÓÏÍ ÎÁ IB (ÚÎÁÀ, ËÁË ÞÅÒÅÚ View É Ô.Ä.) ÐÏÌÕÞÉÔØ ËÏÌÉÞÅÓÔ×Ï ÇÒÕÐÐ Ó 1, 2 É Ô.Ä. ÕÞÁÓÔÎÉËÁÍÉ? =========================================== äÌÑ ÄÕÛÉ 2: =========================================== ÔÁÂÌÉÃÁ CREATE TABLE AAA( í INTEGER NOT NULL ) insert into AAA values(1) insert into AAA values(2) insert into AAA values(4) insert into AAA values(5) insert into AAA values(8) insert into AAA values(9) insert into AAA values(11) insert into AAA values(14) insert into AAA values(15) ÐÏÌÕÞÉÔØ ÏÔÓÕÔÓÔ×ÕÀÝÉÅ ÚÎÁÞÅÎÉÑ (3 6 7 10 12 13) With best regards, Sergey Nikolaenko. E-mail: serg (ÔÕÔ ÆÉÇÎÑ) armax.ru