Number of rows in each table

Hi
How to find the number of rows in each table of a database by just using a SQL query,
and should not use the data dictionary tables also... is there any way...??
Thanks
MJ

It can be done in a single SQL like ->
satyaki>
satyaki>select * from v$version;
BANNER
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE    10.2.0.1.0      Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
Elapsed: 00:00:00.00
satyaki>
satyaki>
satyaki>SELECT table_name,
  2         DBMS_XMLGEN.getxmltype ('SELECT Count(*) c FROM ' || table_name).EXTRACT ('//text()').ge
tnumberval() tot_rows
  3  FROM user_tables;
TABLE_NAME                       TOT_ROWS
QUESTIONTYPE                            0
SRGROUPTABLE                            1
ST_TEST                                 4
REGISTER                                0
DEB_1                                   2
EMP1                                    0
6 rows selected.
Elapsed: 00:00:12.04Credit goes to Michael. ;)
Regards.
Satyaki De.

Similar Messages

  • Count the number of rows in each table

    I have a list of table names, how to I write a query to find out the row count of each table.
    select table_name from all_tables a where owner='XXX' and num_row > 100
    or
    select table_name from all_tables a where owner='XXX' and sample_size > 100
    doesn't quite work.
    Why?
    Thanks in advance,
    Edited by: mpt_fz on Jan 12, 2010 12:06 PM

    Well, then another method learned from Michael ;)
    scott@ORCL>
    scott@ORCL>select * from v$version;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
    PL/SQL Release 11.1.0.6.0 - Production
    CORE    11.1.0.6.0      Production
    TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
    NLSRTL Version 11.1.0.6.0 - Production
    Elapsed: 00:00:00.14
    scott@ORCL>
    scott@ORCL>
    scott@ORCL>select table_name,
      2         DBMS_XMLGEN.getxmltype(
      3                                 'select count(*) c from '||table_name
      4                               ).extract('//text()').getnumberval() tot_rows
      5  from user_tables
      6  where iot_type is null
      7  or iot_type != 'IOT_OVERFLOW';
    TABLE_NAME                       TOT_ROWS
    A_TEST_TB_CASHFLOW                     14
    TEST_DUMMY                              1
    A_TEST_TB_CASHFLOW_N                    1
    TEST_CAST                               1
    DEPT                                    4
    EMP                                    14
    BONUS                                   0
    SALGRADE                                5
    EMP_DETAILS                             3
    T_EMP                                   0
    AUDIT_T                                 0
    TABLE_NAME                       TOT_ROWS
    C_C                                     4
    TRAIN_DET                               2
    TEST_COM_IMP                            2
    TIME_P                                  1
    PRI_UQ                                  4
    TEST_CHK                                0
    ANSHUMANSAHAISGENIOUS                   1
    T                                       1
    XEUROPE                                 2
    D_D                                     8
    PUBLICTRANSPORT                         4
    TABLE_NAME                       TOT_ROWS
    XASIA                                   2
    TF1                                     0
    TEST_HH                                14
    TEST_SWAP                               4
    REVIVE_XML                              3
    XGMT                                    1
    CUSTOMER_DET                            1
    FOURWHEELER                             2
    SPOOL_LOG                              13
    CITYTRANSPORT                           8
    T1                                      2
    TABLE_NAME                       TOT_ROWS
    T2                                      2
    A_A                                     1
    B_B                                     2
    AUTOMOBILE                              1
    XDUAL                                   1
    S_TEMP                                  0
    39 rows selected.
    Elapsed: 00:00:08.78
    scott@ORCL>Regards.
    Satyaki De.

  • How to find number of rows in a table

    i have one table ,it contains millions of record,how can i know number of rows in that table without using count(*),
    i tried in user_table ,for the column NUM_ROWS,but it is not showing number of rows,pls send me a solution for this.
    regards,
    singh

    Ok, that only was to show simply that max option
    might not an option to reduce execution time.Yes, but I/O variances have a tendency to really skew the observed elapsed execution time - making execution time alone a poor choice to determine what SQL will perform better than another.
    Both MAX(ROWNUM) and COUNT(*) results in the same amount of I/O - as both uses the exact same execution plan, I/O wise. In this example, a FTS.
    SQL> create table testtab nologging as select * from all_objects where rownum < 10001;
    Table created.
    -- warmed up the buffer cache with a couple of SELECTs against TESTAB in order
    -- to discard PIOs from the results
    SQL> set autotrace on
    SQL> select count(*) from testtab;
    COUNT(*)
    10000
    Execution Plan
    Plan hash value: 2656308840
    | Id | Operation | Name | Rows | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | 1 | 35 (9)| 00:00:01 |
    | 1 | SORT AGGREGATE | | 1 | | |
    | 2 | TABLE ACCESS FULL| TESTTAB | 9262 | 35 (9)| 00:00:01 |
    Note
    - dynamic sampling used for this statement
    Statistics
    0 recursive calls
    0 db block gets
    131 consistent gets
    0 physical reads
    0 redo size
    223 bytes sent via SQL*Net to client
    238 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    0 sorts (memory)
    0 sorts (disk)
    1 rows processed
    SQL> select max(rownum) from testtab;
    MAX(ROWNUM)
    10000
    Execution Plan
    Plan hash value: 2387991791
    | Id | Operation | Name | Rows | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | 1 | 35 (9)| 00:00:01 |
    | 1 | SORT AGGREGATE | | 1 | | |
    | 2 | COUNT | | | | |
    | 3 | TABLE ACCESS FULL| TESTTAB | 9262 | 35 (9)| 00:00:01 |
    Note
    - dynamic sampling used for this statement
    Statistics
    0 recursive calls
    0 db block gets
    131 consistent gets
    0 physical reads
    0 redo size
    225 bytes sent via SQL*Net to client
    238 bytes received via SQL*Net from client
    2 SQL*Net roundtrips to/from client
    0 sorts (memory)
    0 sorts (disk)
    1 rows processed
    So seeing that we have the exact same baseline for both queries, and that PIO does not influence the results, we time a 1000 executions of both.
    SQL> declare
    2 cnt number;
    3 begin
    4 for i in 1..1000
    5 loop
    6 select count(*) into cnt from testtab;
    7 end loop;
    8 end;
    9 /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:03.19
    SQL>
    SQL> declare
    2 cnt number;
    3 begin
    4 for i in 1..1000
    5 loop
    6 select max(rownum) into cnt from testtab;
    7 end loop;
    8 end;
    9 /
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:15.87
    SQL>
    This shows that what makes the MAX() more expensive is just that - determining the MAX(). For each row, Oracle has to call its internal MAX() function with two values - the current max result and the new value. This function then returns the new max value. This overhead per row adds up to a significant overhead in execution time - making the MAX() approach 5x slower than the COUNT() approach.

  • Displayin message and fixing the number of rows in a table

    Hi Experts,
    I have a requirement like this
    there is a table, where i need to diplay a message when there are no records and no rows should be visible on that table.
    Also, when the records are populated from the context, i need to fix the number of rows in that table and display the records.
    Please let me know hw this can be achieved.
    Also in the table I have Link to URL, please let me know how to handle this reference, when i set the reference Property, its giving me an error stating that the file doesn't exist when the table gets loaded.
    Thanks in Advance
    Regards,
    Palani

    Hi
    Oh!!  You should to  explain it at first thread itself that you want to display a JPG imange or other WDWebResourceTypetaken form the backend.
    1. So this is not at all a URL
    2. You have to convert binary data to WDWebResource then display it in either Image UI element or other (like PDF , txt etc)
    3
    try
                   //        Read the datasource of the FileUpload
                   IWDResource res = wdContext.currentContextElement().getResource();
                   InputStream in = res.read(false);
                   ByteArrayOutputStream bOut = new ByteArrayOutputStream();
                   int length;
                   byte[] part = new byte[10 * 1024];
                   while ((length = in.read(part)) != -1)
                        bOut.write(part, 0, length);
                   in.close();
                   bOut.close();
                   IPrivateUploadCompView.IImageTableElement ele = wdContext.nodeImageTable().createImageTableElement();
                   ele.setImage(wdContext.currentContextElement().getResource().getUrl(0));
                   ele.setText(res.getResourceName());
                   wdContext.nodeImageTable().addElement(ele);
              catch (Exception e)
                   wdComponentAPI.getMessageManager().reportWarning(e.toString());
    Here I assume that you convert that data to IWDResource type or
    4.
    WDWebResource.getWebResource(wdContext.currentContextElement().getresource(), type);
    // getResource of type binary which u read from BAPI and set it in local context , type is MIMETYPE or hardcode it as "JPG"
    5. Further help
       [Help1|To Displayan Image in Webdynpro Java from Standard Function Module;
    [Help2|http://wiki.sdn.sap.com/wiki/display/KMC/GettinganimagefromKMDocumentstobeusedinWeb+Dynpro]
    [Help3|http://wiki.sdn.sap.com/wiki/display/KMC/GettinganimagefromKMDocumenttobeusedinWeb+DynPro]
    It might code look strange at first , please do some reserch in SDN ,I did my best at this level.
    Best Regards
    Satish Kumar

  • NUMBER OF RECORDS IN EACH TABLE???

    Hi!
    how can i find the number of records in each table in the database. the result should be like this
    table_1 123
    table_2 60
    table_3 88
    thanks!!
    also if we want to see it only for a particular schema???

    You can get all the table names and schemas from ALL_TABLES table.
    then you can stored that on a cursor,
    then you can create a function where you use an execute_immediate to run the queries dinamically. with that you can run a COUNT for each TABLE
    That's the idea give it a shot :)
    Regards

  • Number of entries in each table

    Hi,
    I have a requirement to find the number of entries in each table in the system, how do I find this? If I have to goto each table & find out it is a tedious job. Do we have any standard report kind of thing to find out the number of entries in all the tables at a time....
    Thanks,
    Chandra

    I do not think that there is a Std. SAP report for this. If you check there is a FM CATT_GET_TABLE_ENTRIES that actually gets the table entries. But this is called dynamically.
    Hope this helps.
    Regards,
    Mani

  • Fixed number of rows in ADF table

    Can we specify fixed number of rows for ADF table so even no rows displayed it will still show 10 empty rows.

    the rangesize property determines how many rows will be displayed and controls paging. If there are no rows to begin with (if I understand the question correctly) rangesize won't have any effect.

  • Determine Number of  rows in Internal Table

    Hi,
      I have defined my internal table as follows:
         TYPES : BEGIN OF ABC_KEY,
                  FIELD1(2)   TYPE C,
                  FIELD2(1)   TYPE C,
                  FIELD3(8)   TYPE N,
                  END OF ABC_KEY.
    DATA: itab1 TYPE TABLE OF ABC_KEY
                      WITH KEY FIELD1,
           wa_lines_1 LIKE LINE OF itab1.
    How can I retrieve the number of rows in Internal Table?
    Thanks.
    Regards,
    bw_newbie

    You can define the number of rows of the internal table using the DESCRIBE itab command .
    As the rest have already stated a sample code snippet .
    For more info type in DESCRIBE in your prgram and click on (F1) by placing the cursor on DESCRIBE .
    You will find more options as to how you can use the DESCRIBE command according to your requirement .
    Thanks ,
    Hari

  • What is the maximum number of row for a table control in LabWindows/CVI ?

    I use LabWindows CVI 8.5.1 (MMI first developped in version 6.0).
    In one of our many MMI, a table control contains a list of aircraft parameters.
    We can add as many parameters (row) as we want but over 40 000 we observe a crash of the LabWindows CVI runtime.
    Our client want to inscrease the number of parameters (row) up to 200 000 !!!
    So my questions are:
    What is the real maximum number of row for the table control ?
    Is this maximum number of row different on LabWindows 2010 version ?
    Or is there an other solution ?
    Thanks

    Greetings,
    Can you clarify what you mean by "crash"? Is there an error message thrown? Is it possible that you've consumed all of the available memory?
    Please let me know.
    Thanks, James Duvall
    Product Support Engineer
    National Instruments

  • How to retrieve number of rows of a table by jdbc?

    can anyone show me a simple snippet of a java code about how to retrieve the number of ROWS in a table?
    or even only showing the jdbc command that does this job would be enough.
    thanks in advance :)
    cheers

    1. query for the count, then execute the query
    "select count(*) from test" then
    "select * from test"
    2. create a scrollable ResultSet then
    rs.last();
    int count = rs.getRow();
    rs.beforeFirst();
    Jamie
    p.s. this topic has been discussed MANY times. Do a search on this forum and you will get lots of other discussions on this topic.

  • Need value in one field to populate various number of rows in a table

    I have a table created similarly to the sample Purchase Order form. I want the user to enter the quantity needed. Then I want to have a script populate the quantity field on each item in the table. However, some items that are ordered have a different number of parts. I'm not sure how to account for the various number of rows that may be encountered.
    Thanks,
    MDawn

    Hi,
    You can set the type to 'calculated - user can override' in the Object > Value palette. Example here: https://acrobat.com/#d=20TXqhWneiQhOMRVoJVXhQ
    However I am not sure if you will get the user experience that you are after. You can set the quantity rawValue to match that of the first row. The user would be able to override this, but will get warning messages, which may be disconcerting.
    Hope that helsp,
    Niall

  • Number of rows in all tables

    Hi,
    I need to query in max db to find number of rows exist in each and every table. Is there any query we can use to find in a single shot?
    Example:
    S.NO Table Name      Number of rows
    1          A                    3000
    2          B                     5000

    Hi,
    it depends on the database version you are using. In the newer database versions 7.8 and 7.9 you can use the system table files  to get the total number of records.
    SELECT sum (entrycount) from files where type = 'TABLE'
    This includes the MaxDb systemtables as well.
    If you want to count the number of rows of one schema only use the following join command between tables and files:
    SELECT sum(entrycount) from files f, tables t where f.type = 'TABLE'
    AND tableid = fileid and SCHEMANAME = '<schema>'
    e.g.
    SELECT sum(entrycount) from files f, tables t where f.type = 'TABLE'
    AND tableid = fileid and SCHEMANAME = 'SUPERU'
    The system table files contains for each table the entrycount, which is exaclty the number of records.
    Precondition: All file directory counters for all tables have been created sucessfully. This is the case if table Sysupdatecounterwanted is empty. The creation is implictely executed.
    Regards, Christiane

  • How to set max. number of rows in a table?

    Hi,
    I'm working on a SCADA interface. In this application there are different tables with vertical scroll bar.
    I prefer to make visible only the initialized rows (I've initialized 40 blank rows of a table with a string array). Since the window not contain all 40 rows but only 20 rows, I set the rows number of "table properties window" to 20; so I added a vertical scroll bar.
    Now, when a user scroll the scroll-bar, he can view not only the 40 rows initializated, but an undefined number of rows.
    There's a way to visualize only a limited number of rows?
    Thanks in advance!

    duplicate
    LabVIEW Champion . Do more with less code and in less time .

  • Count number of rows in a table

    Hi,
    I have a requirement. I want to frame a SQL, which takes schema name as input and returns tables owned by that schema and number of rows inside a particular table.
    A Sample output:
    ===========
    Table            No. of Rows
    ~~~~          ~~~~~~~~
    A                    123
    B                    126
    C                    234
    .Can somebody help me in framing a query for the same.
    Regards,

    hoek wrote:
    But you could use this script:
    http://laurentschneider.com/wordpress/2007/04/how-do-i-store-the-counts-of-all-tables.html
    Laurent's solution most likely was published before IOT. Anyway, IOT ovwerflow tables must be excluded. Otherwise:
    SQL> select  table_name,
      2          to_number(
      3                    extractvalue(
      4                                 xmltype(
      5                                         dbms_xmlgen.getxml('select count(*) c from '||owner || '.' || table_name)),'/ROWSET/ROW/C')) cou
      6    from  dba_tables
      7    where owner = 'OE'
      8  /
    ERROR:
    ORA-19202: Error occurred in XML processing
    ORA-25191: cannot reference overflow table of an index-organized table
    ORA-06512: at "SYS.DBMS_XMLGEN", line 176
    ORA-06512: at line 1
    no rows selected
    SQL> select  table_name,
      2          to_number(
      3                    extractvalue(
      4                                 xmltype(
      5                                         dbms_xmlgen.getxml('select count(*) c from '||owner || '.' || table_name)),'/ROWSET/ROW/C')) count
      6    from  dba_tables
      7    where owner = 'OE'
      8      and nvl(iot_type,'X') != 'IOT_OVERFLOW'
      9  /
    TABLE_NAME                          COUNT
    CUSTOMERS                             319
    WAREHOUSES                              9
    ORDER_ITEMS                           665
    ORDERS                                105
    INVENTORIES                          1112
    PRODUCT_INFORMATION                   288
    PRODUCT_DESCRIPTIONS                 8640
    PROMOTIONS                              2
    PRODUCT_REF_LIST_NESTEDTAB            288
    SUBCATEGORY_REF_LIST_NESTEDTAB         21
    10 rows selected.
    SQL>  SY.

  • How to check the number of rows in a table with input data?`

    Dear all,
    I am having a table ( with declaration of 5 rows during the init ) there's a next button which will add another 5 rows by pressing. Let say the user ony key in 7 rows of data.. how should i track it? coz these data act as input to my bapi function. One of the input field of my bapi is to state how many rows of data that a user had key in. Thank you.

    I think ur problem is empty records, u dont want to process empty table rows.
    m I right?
    if yes then just before processing the data / records, check for empty records and remove unwanted rows from the node.
    for (int i = 0; i < TableNode.size(); i++)
             if all cells of row(i) are empty
                   remove row(i) from Table Node.
    OR if you dont want to remove empty rows from display (screen), then at the time of processing, transfer useful rows to a separate node and process that node.
    Best Regards
    Deepak

Maybe you are looking for