ďťż
 
Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?= ďťż
 
Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?=
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?=



jtmt2k - 22-09-2007 00:16
Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?=
  Cześć,

Nie wiem jak napisać zapytanie. Baza Oracle, SQL, PL/SQL

W tabeli kilka atrybutów znakowych i chciałbym wypisać nazwy tych
atrybutów, dla których wartości, które spełniają warunek równości.

Próbowałem wyciągnąć sobie wszystkie nazwy atrybutów z tabeli
user_tab_columns i potem na ich podstawie zrobić zapytanie jednak w
warunku otrzymuje porównanie dwóch stringów.

....
d number(5);
begin

for i in (
select c.column_name
from user_tab_columns c
where c.table_name = 'MOJA_TABELA'
and c.data_type = 'VARCHAR2' )
loop
SELECT Count(*) INTO d FROM MOJA_TABELA WHERE i.column_name = '?';
DBMS_OUTPUT.PUT_LINE(i.column_name;);
DBMS_OUTPUT.PUT_LINE(d);
end loop;
end sign_replace;
....

Może mi ktoś pomóc ?

Pozdr,
jtmt





dap997 - 23-09-2007 00:00

  jtmt2k wrote:
> Cześć,
>
> Nie wiem jak napisać zapytanie. Baza Oracle, SQL, PL/SQL
>
> W tabeli kilka atrybutów znakowych i chciałbym wypisać nazwy tych
> atrybutów, dla których wartości, które spełniają warunek równości.
>
> Próbowałem wyciągnąć sobie wszystkie nazwy atrybutów z tabeli
> user_tab_columns i potem na ich podstawie zrobić zapytanie jednak w
> warunku otrzymuje porównanie dwóch stringów.
>
> ...
> d number(5);
> begin
>
> for i in (
> select c.column_name
> from user_tab_columns c
> where c.table_name = 'MOJA_TABELA'
> and c.data_type = 'VARCHAR2' )
> loop
> SELECT Count(*) INTO d FROM MOJA_TABELA WHERE i.column_name = '?';
> DBMS_OUTPUT.PUT_LINE(i.column_name;);
> DBMS_OUTPUT.PUT_LINE(d);
> end loop;
> end sign_replace;
> ...
>
> Może mi ktoś pomóc ?

Hej,
nie rozumiem co chcesz osiągnąć.
Jak chcesz otrzymać nazwy obiektów (table, indeksów) posiadających
kolumne o danej nazwie to dobrze robisz używajac user_tab_columns...

dap
--
dap.polanski.biz




Thomas Olszewicki - 23-09-2007 00:00
=?iso-8859-2?q?Re:_Oracle,_SQL,_PL/SQL=2E_Jak_napisa=E6_zapytanie,_kt=F3re_zwr=F3ci_n azw=EA_atrybutu,_kt=F3rego_warto=B6ci_spe=B3niaj=B 1_zadany_warunek?=
  On Sep 21, 6:30 pm, jtmt2k <jtm...@gmial.com> wrote:
> Cześć,
>
> Nie wiem jak napisać zapytanie. Baza Oracle, SQL, PL/SQL
>
> W tabeli kilka atrybutów znakowych i chciałbym wypisać nazwy tych
> atrybutów, dla których wartości, które spełniają warunek równości.
>
> Próbowałem wyciągnąć sobie wszystkie nazwy atrybutów z tabeli
> user_tab_columns i potem na ich podstawie zrobić zapytanie jednak w
> warunku otrzymuje porównanie dwóch stringów.
>
> ...
> d number(5);
> begin
>
> for i in (
> select c.column_name
> from user_tab_columns c
> where c.table_name = 'MOJA_TABELA'
> and c.data_type = 'VARCHAR2' )
> loop
> SELECT Count(*) INTO d FROM MOJA_TABELA WHERE i.column_name = '?';
> DBMS_OUTPUT.PUT_LINE(i.column_name;);
> DBMS_OUTPUT.PUT_LINE(d);
> end loop;
> end sign_replace;
> ...
>
> Może mi ktoś pomóc ?
>
> Pozdr,
> jtmt

Musisz uzyc Dynamic SQL;
Zobacz "Execute Immediate"
oraz OPEN CURSOR FOR ... USING...
HTH
Thomas




jtmt2k - 24-09-2007 00:10

  Thomas Olszewicki pisze:
> On Sep 21, 6:30 pm, jtmt2k <jtm...@gmial.com> wrote:
>
> Musisz uzyc Dynamic SQL;
> Zobacz "Execute Immediate"
> oraz OPEN CURSOR FOR ... USING...
> HTH
> Thomas
>

Dzięki :)

pozdr,
jtmt





jtmt2k - 24-09-2007 00:10

  dap997 pisze:

>
> Hej,
> nie rozumiem co chcesz osiągnąć.
> Jak chcesz otrzymać nazwy obiektów (table, indeksów) posiadających
> kolumne o danej nazwie to dobrze robisz używajac user_tab_columns...
>
>
> dap
> --
> dap.polanski.biz

hej,

Chodzi o to, że nazwy tych atrybutów, której dostaje z pętli mają
posłużyć od konstrukcji zapytania o wartości tabeli dla tego atrybutu
dla podanego warunku. I nie wiem jak to mogę zrobić bo ten warunek,
który widzisz

>> SELECT Count(*) INTO d FROM MOJA_TABELA WHERE i.column_name = '?';

jest bez sensu bo porównuje dwa stringi.

Problem jest taki, ze tabela ma ogromną liczbę atrybutów i chce napisać
sobie takie zapytanie, które zwróci mi nazwę atrybutu, którego wartości
spełniają zadany warunek.

jasne ?

pozdr,
jtmt
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    Oracle 19g +Insert +Insert +Insert... MSSQL Express czy Oracle Express [Oracle, Toad] Zaladowanie obiektu w TOAD [Oracle][Reports30] 10G nie dziala razem z Reports3.0 klient oracle (zmiana domyslna klienta oracla) [oracle] [xml] XML na bazie istniejacej struktury ? [Oracle] W jaki sposób skopiować całą zawartość schemy jednego użytkownika do nowo utworzonego użytkownika? klient Oracle 10g SE a Windows 98 SE Oracle Standard Edition One - czym sie rozni od wersji standard iexpress? [ORACLE] RMAN - blad: ORA-19665 i ORA-19664
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • fantazia.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com