abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

včera 16:11 | Komunita

Byly zveřejněny videozáznamy přednášek a workshopů z letošní konference OpenAlt konané 4. a 5. listopadu v Brně. K videozáznamům lze přistupovat ze stránky na SuperLectures nebo přes program konference, detaily o vybrané přednášce nebo workshopu a dále kliknutím na ikonku filmového pásu.

Ladislav Hagara | Komentářů: 0
včera 14:11 | Komunita

Některým uživatelům Firefoxu se tento týden do Firefoxu nainstalovalo neznámé rozšíření Looking Glass 1.0.3 (png). Ve fórů Mozilly se řešilo, zda se nejedná o malware. Mozilla později informovala, že se jednalo o reklamu na seriál Mr. Robot. Řadě uživatelů Firefoxu se jednání Mozilly vůbec nelíbilo. Mozilla proto automatickou instalaci doplňku ukončila [Hacker News, reddit].

Ladislav Hagara | Komentářů: 15
16.12. 12:00 | Nová verze

Po cca 3 týdnech od vydání Linux Mintu 18.3 s kódovým jménem Sylvia a prostředími MATE a Cinnamon byla oznámena také vydání s prostředími KDE a Xfce. Podrobnosti v poznámkách k vydání (KDE, Xfce) a v přehledech novinek s náhledy (KDE, Xfce). Linux Mint 18.3 je podporován do roku 2021.

Ladislav Hagara | Komentářů: 6
15.12. 12:55 | Nová verze

Byla vydána verze 17.12.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi. Aplikace, které nebyly dosud portovány na KDE Frameworks 5, byly z KDE Aplikací odstraněny.

Ladislav Hagara | Komentářů: 54
15.12. 03:00 | Komunita

Na Humble Bundle lze získat počítačovou hru Company of Heroes 2 (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 0
15.12. 02:00 | Zajímavý software

Christian Kellner představil na svém blogu projekt Bolt řešící bezpečnost rozhraní Thunderbolt 3 na Linuxu. Pomocí příkazu boltctl nebo rozšíření GNOME Shellu lze komunikovat s démonem boltd a například zakázat neznámá zařízení a předejít tak útokům typu Thunderstrike nebo DMA.

Ladislav Hagara | Komentářů: 10
15.12. 01:00 | Nová verze

Po půl roce vývoje od vydání verze 11.0 byla vydána verze 11.1 svobodného softwaru pro vytváření datových úložišť na síti FreeNAS (Wikipedie). Nejnovější FreeNAS je postaven na FreeBSD 11.1. Přehled novinek v příspěvku na blogu. Zdůraznit lze zvýšení výkonu OpenZFS, počáteční podporu Dockeru nebo synchronizaci s cloudovými službami Amazon S3 (Simple Storage Services), Backblaze B2 Cloud, Google Cloud a Microsoft Azure

Ladislav Hagara | Komentářů: 0
14.12. 23:55 | Nová verze

Po dvou měsících vývoje od vydání verze 235 oznámil Lennart Poettering vydání verze 236 správce systému a služeb systemd (GitHub, NEWS).

Ladislav Hagara | Komentářů: 10
14.12. 20:00 | Nová verze Ladislav Hagara | Komentářů: 0
14.12. 19:33 | Pozvánky

Pražská Fedora 27 Release Party, oslava nedávného vydání Fedory 27, se uskuteční 19. prosince od 19:00 v prostorách společnosti Etnetera (Jankovcova 1037/49). Na programu budou přednášky o novinkách, diskuse, neřízený networking atd.

Ladislav Hagara | Komentářů: 0
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (8%)
 (0%)
 (1%)
 (1%)
 (76%)
 (14%)
Celkem 1012 hlasů
 Komentářů: 45, poslední 1.12. 19:00
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: SELECT vicero výrazů

    5.9.2009 16:43 Jirka
    SELECT vicero výrazů
    Přečteno: 1041×

    Ahoj,
    je možné udělat v SELECTu, že výsledek prvního výrazu se použije ve druhém výrazu? Například něco jako toto:

    SELECT 1+2 INTO @x, 4*@x;
    

    To samozřejmě nefunguje, ale třeba to nějak jde. Zatím to dělám takto:

    SELECT 1+2 INTO @x; SELECT 4*@x;
    

    Jde to udělat jedním SELECTem, nebo je nutno použít dva?


    Řešení dotazu:


    Odpovědi

    5.9.2009 17:02 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Asi budete muset napsat trochu víc, co vlastně chcete udělat. To, co popisujete, se dá snadno řešit obyčejným
    SELECT 4*(1+2);
    5.9.2009 17:26 Jirka
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů

    Ono je to moc zjednodušené, v tom prvním výrazu je prostě  komplikovanější výpočet. A ve druhém je výraz, kde použiji výsledek prvního výrazu. Pokud to chci mít v jednom selectu, tak musim ten komplikovaný výpočet provést ještě jednou, to samozřejmě lze. Jen mě napadlo, zda-li na to neexistuje finta, neopakovat ještě jednou ten komplikovaný výpočet.

    5.9.2009 18:57 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Zkusil bych SELECT 1+2 AS x, 4*x. Ale nevím, zda to projde, asi to bude záviset i na konkrétní databázi.
    5.9.2009 19:21 Jirka
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů

    Toto a podobné jsem zkoušel na MySQL a bohužel nic.

    Řešení 1× (neaktivni)
    xkucf03 avatar 12.9.2009 17:44 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Vnořený dotaz

    Např. v PostgreSQL to nefunguje. Ale obecně funguje vnořený dotaz:

    SELECT x, 4*x
    FROM (SELECT 1+2 AS x) AS z
    
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    5.9.2009 20:01 ZAH | skóre: 42 | blog: ZAH
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Dle mne by to muselo vypadat nějak takto.
    select cx, cx from (select code as cx FROM base.centers) as scx
    
    kde cx je předvipočítáno a může se zůčastnit dalších výpočtů.
    6.9.2009 08:15 FooBar
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů

    Zjednodusil jsi to mozna az trochu moc brutalne;), ale jinak jestli chapu dobre co chces, tak v Oracle a PostgreSQL (nevim, jak je na tom Firebird a vim, ze MySQL to neumi) existuje WITH statement, neco jako (pgsql):

    WITH

    AS ( SELECT 1+2 AS kouzelnenumero )

    SELECT

     kouzelnenumero, 4*kouzelnenumero FROM tri

    6.9.2009 08:15 FooBar
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů

    err... WITH tri AS [...] ... je brzo rano :-)

    6.9.2009 09:15 ZAH | skóre: 42 | blog: ZAH
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    To moje funguje určitě na všem co umí select from select. Jinak prvotní dotaz byl také dost zjednodušený.
    6.9.2009 10:53 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Kde nefunguje WITH tak ho lze nahradit viewem, nebo dočasnou tabulkou, nebo vloženou procedurou.
    In Ada the typical infinite loop would normally be terminated by detonation.
    7.9.2009 09:00 podlesh | skóre: 38 | Freiburg im Breisgau
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Pointa použití WITH v tomto případě spočívá v tom, že je součástí SELECT příkazu, že nevyžaduje vůbec žádná práva a že nevyžaduje žádný úklid.

    Jinak bych ještě doplnil, že WITH konstrukce je i v DB2 (myslím že tam je dokonce "původní", ale nejsem si jist).
    default avatar 8.9.2009 20:45 default | skóre: 22 | Madrid
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Přílohy:

    Pointa WITH (factoring klauzule) je hlavně v tom, že materializuje. Bez indexů. A z toho vyplývá i využití. :-D Třeba Oracle umí udělat in-line view, ale někdy ne, což je zákeřné. :-)

    Následující příklad ukazuje in-line view:

    CREATE TABLE my_all_tables (
        table_id NUMBER(10) NOT NULL,
        table_name VARCHAR2(30) NOT NULL)
    /
    
    ALTER TABLE my_all_tables ADD CONSTRAINT pk_mat_tid PRIMARY KEY (table_id)
    /
    
    CREATE TABLE my_all_schemas (
        schema_name VARCHAR2(30) NOT NULL,
        table_id NUMBER(10) NOT NULL)
    /
    
    INSERT ALL
        INTO my_all_tables (table_id, table_name)
            VALUES (table_id1, table_name1)
        INTO my_all_schemas (schema_name, table_id)
            VALUES (table_schema1, table_id1)
    SELECT
        ROW_NUMBER() OVER (ORDER BY att.table_name ASC) AS table_id1,
        att.owner AS table_schema1,
        att.table_name AS table_name1
    FROM
        all_tables att
    /
    
    COMMIT
    /
    
    ALTER TABLE my_all_schemas ADD CONSTRAINT fk_mas_mat FOREIGN KEY (table_id) REFERENCING my_all_tables (table_id)
    /
    
    CREATE INDEX idx_mat_tn ON my_all_tables (table_name)
    /
    
    EXPLAIN PLAN FOR SELECT
        '"' || mas.schema_name || '"."' || mat.table_name || '"' AS full_name
    FROM
        my_all_schemas mas INNER JOIN my_all_tables mat ON (mas.table_id = mat.table_id)
    WHERE
        mat.table_name LIKE 'C%'
    /
    
    SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY)
    /
    
    EXPLAIN PLAN FOR SELECT
        '"' || dta.schema_name || '"."' || dta.table_name || '"' AS full_name
    FROM
        (SELECT
            mas.schema_name,
            mat.table_name
        FROM
            my_all_schemas mas INNER JOIN my_all_tables mat ON (mas.table_id = mat.table_id)) dta
    WHERE
        dta.table_name LIKE 'C%'
    /
    
    SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY)
    /
    
    EXPLAIN PLAN FOR WITH dta AS (SELECT
            mas.schema_name,
            mat.table_name
        FROM
            my_all_schemas mas INNER JOIN my_all_tables mat ON (mas.table_id = mat.table_id))
    SELECT
        '"' || dta.schema_name || '"."' || dta.table_name || '"' AS full_name
    FROM
        dta
    WHERE
        dta.table_name LIKE 'C%'
    /
    
    SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY)
    /
    
    DROP TABLE my_all_schemas PURGE
    /
    
    DROP TABLE my_all_tables PURGE
    /
    

    A výstup:

    CREATE TABLE succeeded.
     ALTER TABLE my_all_tables succeeded.
    CREATE TABLE succeeded.
    5254 rows inserted
    COMMIT succeeded.
     ALTER TABLE my_all_schemas succeeded.
    CREATE TABLE succeeded.
     ALTER TABLE my_all_tables succeeded.
    CREATE TABLE succeeded.
    5254 rows inserted
    COMMIT succeeded.
     ALTER TABLE my_all_schemas succeeded.
    CREATE INDEX succeeded.
    EXPLAIN PLAN succeeded.
    PLAN_TABLE_OUTPUT
    -----------------------------------------------------------------------------------------------
    Plan hash value: 1386169526
    
    -----------------------------------------------------------------------------------------------
    | Id  | Operation                    | Name           | Rows  | Bytes | Cost (%CPU)| Time     |
    -----------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT             |                |   171 | 10260 |    11  (10)| 00:00:01 |
    |*  1 |  HASH JOIN                   |                |   171 | 10260 |    11  (10)| 00:00:01 |
    |   2 |   TABLE ACCESS BY INDEX ROWID| MY_ALL_TABLES  |   171 |  5130 |     5   (0)| 00:00:01 |
    |*  3 |    INDEX RANGE SCAN          | IDX_MAT_TN     |   171 |       |     3   (0)| 00:00:01 |
    |   4 |   TABLE ACCESS FULL          | MY_ALL_SCHEMAS |  2627 | 78810 |     5   (0)| 00:00:01 |
    -----------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - access("MAS"."TABLE_ID"="MAT"."TABLE_ID")
       3 - access("MAT"."TABLE_NAME" LIKE 'C%')
           filter("MAT"."TABLE_NAME" LIKE 'C%')
    
    Note
    -----
       - dynamic sampling used for this statement
    
    22 rows selected
    
    EXPLAIN PLAN succeeded.
    PLAN_TABLE_OUTPUT
    -----------------------------------------------------------------------------------------------
    Plan hash value: 1386169526
    
    -----------------------------------------------------------------------------------------------
    | Id  | Operation                    | Name           | Rows  | Bytes | Cost (%CPU)| Time     |
    -----------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT             |                |   171 | 10260 |    11  (10)| 00:00:01 |
    |*  1 |  HASH JOIN                   |                |   171 | 10260 |    11  (10)| 00:00:01 |
    |   2 |   TABLE ACCESS BY INDEX ROWID| MY_ALL_TABLES  |   171 |  5130 |     5   (0)| 00:00:01 |
    |*  3 |    INDEX RANGE SCAN          | IDX_MAT_TN     |   171 |       |     3   (0)| 00:00:01 |
    |   4 |   TABLE ACCESS FULL          | MY_ALL_SCHEMAS |  2627 | 78810 |     5   (0)| 00:00:01 |
    -----------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - access("MAS"."TABLE_ID"="MAT"."TABLE_ID")
       3 - access("MAT"."TABLE_NAME" LIKE 'C%')
           filter("MAT"."TABLE_NAME" LIKE 'C%')
    
    Note
    -----
       - dynamic sampling used for this statement
    
    22 rows selected
    
    EXPLAIN PLAN succeeded.
    PLAN_TABLE_OUTPUT
    -----------------------------------------------------------------------------------------------
    Plan hash value: 1386169526
    
    -----------------------------------------------------------------------------------------------
    | Id  | Operation                    | Name           | Rows  | Bytes | Cost (%CPU)| Time     |
    -----------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT             |                |   171 | 10260 |    11  (10)| 00:00:01 |
    |*  1 |  HASH JOIN                   |                |   171 | 10260 |    11  (10)| 00:00:01 |
    |   2 |   TABLE ACCESS BY INDEX ROWID| MY_ALL_TABLES  |   171 |  5130 |     5   (0)| 00:00:01 |
    |*  3 |    INDEX RANGE SCAN          | IDX_MAT_TN     |   171 |       |     3   (0)| 00:00:01 |
    |   4 |   TABLE ACCESS FULL          | MY_ALL_SCHEMAS |  2627 | 78810 |     5   (0)| 00:00:01 |
    -----------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - access("MAS"."TABLE_ID"="MAT"."TABLE_ID")
       3 - access("MAT"."TABLE_NAME" LIKE 'C%')
           filter("MAT"."TABLE_NAME" LIKE 'C%')
    
    Note
    -----
       - dynamic sampling used for this statement
    
    22 rows selected
    
     DROP TABLE my_all_schemas succeeded.
     DROP TABLE my_all_tables succeeded.
    

    Ale jakmile uděláš něco složitějšího:

    WITH dta AS (SELECT
            mas.schema_name,
            mat.table_name,
            LENGTH(mat.table_name) AS table_name_len
        FROM
            my_all_schemas mas INNER JOIN my_all_tables mat ON (mas.table_id = mat.table_id))
    SELECT
        '"' || dta.schema_name || '"."' || dta.table_name || '" (' || gen.val || ')' AS full_name
    FROM
        dta INNER JOIN (SELECT
                gen.val
            FROM
                (SELECT
                    LEVEL AS val
                FROM
                    dual
                CONNECT BY
                    LEVEL <= (SELECT MAX(dta.table_name_len) FROM dta)) gen) gen
            ON ((dta.table_name_len <= 1 AND gen.val = 1) OR (dta.table_name_len > 1 AND gen.val <= dta.table_name_len))
    WHERE
        dta.table_name LIKE 'C%'
    /
    

    pak LOAD AS SELECT a čau:

    EXPLAIN PLAN succeeded.
    PLAN_TABLE_OUTPUT
    -------------------------------------------------------------------------------------------------------------
    Plan hash value: 330330509
    
    -------------------------------------------------------------------------------------------------------------
    | Id  | Operation                       | Name                      | Rows  | Bytes | Cost (%CPU)| Time     |
    -------------------------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT                |                           |     8 |   480 |    21   (5)| 00:00:01 |
    |   1 |  TEMP TABLE TRANSFORMATION      |                           |       |       |            |          |
    |   2 |   LOAD AS SELECT                |                           |       |       |            |          |
    |*  3 |    HASH JOIN                    |                           |  2627 |   153K|    11  (10)| 00:00:01 |
    |   4 |     TABLE ACCESS FULL           | MY_ALL_SCHEMAS            |  2627 | 78810 |     5   (0)| 00:00:01 |
    |   5 |     TABLE ACCESS FULL           | MY_ALL_TABLES             |  2627 | 78810 |     5   (0)| 00:00:01 |
    |   6 |   NESTED LOOPS                  |                           |     8 |   480 |    10   (0)| 00:00:01 |
    |   7 |    VIEW                         |                           |     1 |    13 |     2   (0)| 00:00:01 |
    |*  8 |     CONNECT BY WITHOUT FILTERING|                           |       |       |            |          |
    |   9 |      FAST DUAL                  |                           |     1 |       |     2   (0)| 00:00:01 |
    |  10 |      SORT AGGREGATE             |                           |     1 |    13 |            |          |
    |  11 |       VIEW                      |                           |  2627 | 34151 |     8   (0)| 00:00:01 |
    |  12 |        TABLE ACCESS FULL        | SYS_TEMP_0FD9D6608_51DED0 |  2627 |   120K|     8   (0)| 00:00:01 |
    |* 13 |    VIEW                         |                           |     8 |   376 |     8   (0)| 00:00:01 |
    |  14 |     TABLE ACCESS FULL           | SYS_TEMP_0FD9D6608_51DED0 |  2627 |   120K|     8   (0)| 00:00:01 |
    -------------------------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       3 - access("MAS"."TABLE_ID"="MAT"."TABLE_ID")
       8 - filter(LEVEL<= (SELECT MAX("DTA"."TABLE_NAME_LEN") FROM  (SELECT /*+ CACHE_TEMP_TABLE ("T1")
                  */ "C0" "SCHEMA_NAME","C1" "TABLE_NAME","C2" "TABLE_NAME_LEN" FROM "SYS"."SYS_TEMP_0FD9D6608_51DED0"
                  "T1") "DTA"))
      13 - filter("DTA"."TABLE_NAME" LIKE 'C%' AND ("DTA"."TABLE_NAME_LEN"<=1 AND "GEN"."VAL"=1 OR
                  "DTA"."TABLE_NAME_LEN">1 AND "GEN"."VAL"<="DTA"."TABLE_NAME_LEN"))
    
    Note
    -----
       - dynamic sampling used for this statement
    
    35 rows selected
    

    Zatímco, když si ty dotazy rozkopíruješ:

    SELECT
        '"' || dta.schema_name || '"."' || dta.table_name || '" (' || gen.val || ')' AS full_name
    FROM
        (SELECT
            mas.schema_name,
            mat.table_name,
            LENGTH(mat.table_name) AS table_name_len
        FROM
            my_all_schemas mas INNER JOIN my_all_tables mat ON (mas.table_id = mat.table_id)) dta
        INNER JOIN (SELECT
                gen.val
            FROM
                (SELECT
                    LEVEL AS val
                FROM
                    dual
                CONNECT BY
                    LEVEL <= (SELECT
                            MAX(dta.table_name_len)
                        FROM
                            (SELECT
                                mas.schema_name,
                                mat.table_name,
                                LENGTH(mat.table_name) AS table_name_len
                            FROM
                                my_all_schemas mas INNER JOIN my_all_tables mat ON (mas.table_id = mat.table_id)) dta)) gen) gen
            ON ((dta.table_name_len <= 1 AND gen.val = 1) OR (dta.table_name_len > 1 AND gen.val <= dta.table_name_len))
    WHERE
        dta.table_name LIKE 'C%'
    /
    

    dostaneš:

    EXPLAIN PLAN succeeded.
    PLAN_TABLE_OUTPUT
    ---------------------------------------------------------------------------------------------------
    Plan hash value: 2113348083
    
    ---------------------------------------------------------------------------------------------------
    | Id  | Operation                        | Name           | Rows  | Bytes | Cost (%CPU)| Time     |
    ---------------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT                 |                |     1 |    73 |    12   (9)| 00:00:01 |
    |*  1 |  HASH JOIN                       |                |     1 |    73 |    12   (9)| 00:00:01 |
    |   2 |   NESTED LOOPS                   |                |       |       |            |          |
    |   3 |    NESTED LOOPS                  |                |     1 |    43 |     6   (0)| 00:00:01 |
    |   4 |     VIEW                         |                |     1 |    13 |     2   (0)| 00:00:01 |
    |*  5 |      CONNECT BY WITHOUT FILTERING|                |       |       |            |          |
    |   6 |       FAST DUAL                  |                |     1 |       |     2   (0)| 00:00:01 |
    |   7 |       SORT AGGREGATE             |                |     1 |    43 |            |          |
    |*  8 |        HASH JOIN                 |                |  2627 |   110K|    11  (10)| 00:00:01 |
    |   9 |         TABLE ACCESS FULL        | MY_ALL_SCHEMAS |  2627 | 34151 |     5   (0)| 00:00:01 |
    |  10 |         TABLE ACCESS FULL        | MY_ALL_TABLES  |  2627 | 78810 |     5   (0)| 00:00:01 |
    |* 11 |     INDEX RANGE SCAN             | IDX_MAT_TN     |   171 |       |     2   (0)| 00:00:01 |
    |* 12 |    TABLE ACCESS BY INDEX ROWID   | MY_ALL_TABLES  |     1 |    30 |     4   (0)| 00:00:01 |
    |  13 |   TABLE ACCESS FULL              | MY_ALL_SCHEMAS |  2627 | 78810 |     5   (0)| 00:00:01 |
    ---------------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       1 - access("MAS"."TABLE_ID"="MAT"."TABLE_ID")
       5 - filter(LEVEL<= (SELECT MAX(LENGTH("MAT"."TABLE_NAME")) FROM "MY_ALL_TABLES"
                  "MAT","MY_ALL_SCHEMAS" "MAS" WHERE "MAS"."TABLE_ID"="MAT"."TABLE_ID"))
       8 - access("MAS"."TABLE_ID"="MAT"."TABLE_ID")
      11 - access("MAT"."TABLE_NAME" LIKE 'C%')
           filter("MAT"."TABLE_NAME" LIKE 'C%')
      12 - filter("GEN"."VAL"=1 AND LENGTH("MAT"."TABLE_NAME")<=1 OR
                  LENGTH("MAT"."TABLE_NAME")>1 AND "GEN"."VAL"<=LENGTH("MAT"."TABLE_NAME"))
    
    Note
    -----
       - dynamic sampling used for this statement
    
    36 rows selected
    

    Ano, příklad není ideální, ale nic lepšího mě teď narychlo nenapadá.

    Oracle 11gR1

    6.9.2009 10:00 Murry | skóre: 16 | Brno
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Moc jsem nepochopil tvuj problem (tak asi jak ten zbytek lidi nade mnou), nicmene neresi to:
    SELECT x,y FROM (SELECT ...) popr. JOIN?
    Řešení 1× (neaktivni)
    23.12.2009 11:35 Jirka
    Rozbalit Rozbalit vše Re: SELECT vicero výrazů
    Hurá, jde to:
    SELECT @x:=1+2, 4*@x;
    +---------+------+
    | @x:=1+2 | 4*@x |
    +---------+------+
    |       3 |   12 | 
    +---------+------+
    
    Je to tedy vyřešeno, jen jsem už zapoměl, proč jsem to vlastně chtěl...

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.