А вот как Oracle ответит на

oof
Дата: 10.03.2007 14:40:39
Stax.
Дата: 10.03.2007 17:05:02
  1  select count(*) from sf t1, sf t2, sf t3, sf t4
  2* where t1.n1 + t2.n2 + t3.n3 + t4.n4 = 0
SQL> /

 COUNT(*)
---------
    54344

SQL> select sum(n1),sum(n2),sum(n3),sum(n4) from sf;

  SUM(N1)   SUM(N2)   SUM(N3)   SUM(N4)
--------- --------- --------- ---------
   -14871      -185     74875     42307
.....
stax
Yo.!
Дата: 10.03.2007 17:10:52
странно ...
SQL> select count(*) from sf t1, sf t2, sf t3, sf t4
where
t1.n1 + t2.n2 + t3.n3 + t4.n4 = 0 ;

  COUNT(*)
----------
     53230

SQL> select sum(n1),sum(n2),sum(n3),sum(n4) from sf;

   SUM(N1)    SUM(N2)    SUM(N3)    SUM(N4)
---------- ---------- ---------- ----------
    -15995      -1480      65161      35902

Stax.
Дата: 10.03.2007 18:17:05
Yo.!
странно ...

не знаю что значит в МS codepage = 'RAW'
поетому привел сумы по столбиках

мож я что-то не то загрузил
load data
infile *
into table sf
append
fields terminated by '|'
(n1,n2,n3,n4)
begindata
....
stax
andrey_anonymous
Дата: 10.03.2007 19:10:03
Yo.!
странно ...
SQL> select sum(n1),sum(n2),sum(n3),sum(n4) from sf;

   SUM(N1)    SUM(N2)    SUM(N3)    SUM(N4)
---------- ---------- ---------- ----------
    -15995      -1480      65161      35902

В Вашем решении не учтена первая строка (1124, 1295, 9714, 6405) тестового набора данных.
Мой результат эквивалентен результату Stax
Yo.!
Дата: 11.03.2007 01:58:53
andrey_anonymous

В Вашем решении не учтена первая строка (1124, 1295, 9714, 6405) тестового набора данных.
Мой результат эквивалентен результату Stax

действительно, май фол. oracle xe визард первую строку как заголовок наверно воспринял а я не врубился.
SQL> insert into sf (n1,n2,n3,n4)  values (1124, 1295, 9714, 6405) ;

1 row created.

SQL> commit ;

Commit complete.

SQL> select count(*) from sf t1, sf t2, sf t3, sf t4
where t1.n1 + t2.n2 + t3.n3 + t4.n4 = 0  2  ;

  COUNT(*)
----------
     54344
andreymx
Дата: 12.03.2007 08:44:03
Если кому интересно - примерно полсекунды по вот такому вот левому запросу . Количество совпадает = 54344
SELECT	COUNT(*)
FROM
	(
		SELECT	t1.a+t2.b s1, ROWNUM rn1
		FROM	TMP_SF t1,
			TMP_SF t2
	)s1,
	(
		SELECT	t1.c+t2.d s2, ROWNUM rn2
		FROM	TMP_SF t1,
			TMP_SF t2
	)s2
WHERE s1=-s2
прим.: поля обозвал как a b c d...