SQL Query to Read each record in a table
Can you please share any T-SQL block of statement, that reads reach record row by row
for example
Table1
Row_1 a b c
Row_2 d e f
I need to call an stored proc which takes record values as parameters(row by row)
Equalent logic in c#
foreach row in Table1
Sp(row)
Try
--Create table
CREATE TABLE Test1 (
id INT identity(1, 1)
,Val INT
,flag CHAR(1) DEFAULT 'F'
--Feed value
INSERT INTO Test1
VALUES (
1
,'F'
2
,'F'
3
,'F'
SELECT *
FROM Test1
--Create SP
CREATE PROCEDURE yourSp @param INT
AS
BEGIN
SELECT 'Yes'
,@param
END
DECLARE @i INT = 1
,@count INT = 0
,@val INT = 0
SELECT @count = count(1)
FROM Test1
WHILE (@i <= @count)
BEGIN
SELECT @val = Val
FROM Test1
WHERE id = @i
EXEC YourSP @val
SET @i = @i + 1
END
Thanks
Manish
Please click Mark as Answer if my post solved your problem and click
Vote as Helpful if this post was useful.
Similar Messages
-
Help Required -- Can we use SQL Query to READ data from SAP MDM Tables
Hi All,
Please help.........
Can we use SQL Query to READ(No Creation/Updation/Deletion just Read) Data from SAP MDM tables directly, without using MDM Syndicator.
Or direct SQL access to SAP MDM tables is not possible. Only through MDM Syndicator can we export data.
Thanks in Advance
RegardsAll the tables you create in Repository comes under A2i_CM_Tables in Database named as your repository name. So the tables names are fields of table A2i_CM_Tables. Now i tried it but cant make it.
Now, I dont think its possible to extract all fields in tables and there values using select query. May be pure sql guy can do that or not.
But there is no relation of data extraction and syndicator. Data is viewed in Data Manager. and you can also store data in a file from DM also.
BR,
Alok -
Dear All,
I have a requirement, to write a SQL query to populate the records which are inserted less than 10 no of records.
The tables has the cretaed_date column and along with other key column which will have unique values.
Ex1: The user might have inserted records from application, per week basis, between the date range '01-jun-2013' - 08-jun-2013 , the no of records created by the user during this week may be less than 10 records or more.
But I want to populate the records by giving date range that too, it should pick the records the count which fall with in 10 records.
I dont want the query to populate the records if the user has inserted more than 10 records in a week.
Ex2:
User 1 has created 15 records during the week 1 ( the query should not populate this ).
User 2: has cretaed less than 10 records from the UI during the week 2. ( This details should get populated ).
ThanksUse COUNT to find how many rows where inserted in a week.
If this does not answer your question then please read Re: 2. How do I ask a question on the forums? And provide necessary details. -
Read each record in an Access Database using PowerShell
I have a fix database that I need to read each record and compare it to an issue. I'm having some issues just reading each record in the specific table, when i run the below code i just get the first entry over and over again. If somone could point me in
the correct direction on how to read each record it would really help me out.
$adOpenStatic = 3
$adLockOptimistic = 3
$objConnection = New-Object -com "ADODB.Connection"
$objRecordSet = New-Object -com "ADODB.Recordset"
$objConnection.Open("Provider = Microsoft.ACE.OLEDB.12.0; Data Source = C:\temp\Fix.mdb")
$objRecordset.Open("Select * From Fix_Information", $objConnection, $adOpenStatic, $adLockOptimistic)
$i = 0
do {
$objRecordSet.Fields.Item("FixName").Value
$objRecordSet.MoveNext | Out-Null
$i++
while ($i -le $objRecordSet.RecordCount)
$objRecordSet.Close()
$objConnection.Close()I haven't tested this, but it looks like you're just missing the parentheses after the MoveNext method name:
$objRecordSet.MoveNext() | Out-Null -
XSU: Reading each record at a time
I am using XSU12 to retrieve database contents in XML format. I am passing the Connection and ResultSet objects to create OracleXMLQuery object. I want to read each record at a time and so setting the maxRows to 1 and then getting the xmlstring.
code looks like...
qry =new OracleXMLQuery(connection,resultset);
qry.setMaxRows(1);
xmlString = qry.getXMLString();
I keep this in a loop and read each record at a time. The problem is whenever getXMLString() method is called, the application is hitting the database, which will be a performance issue.
Is there any way to read contents of a table at once and then loop each record at a time without hitting the DB everytime?
Kishore
nullpublic static char readChar() {
int ch;
char r = '\0';
boolean done = false;
while (!done) {
try {
ch = System.in.read();
r = (char) ch;
if (r == '\r') {
System.out.println("Not a character. Please try again!");
System.in.skip(1);
done = false;
} else {
System.in.skip(2);
done = true;
} catch (java.io.IOException e) {
done = true;
return r;
Try this as an method and then use it..
This code will read will be in response untill you hit the return key but will take only the first character.... -
Sql Except query to Display mismatched records along with Table names
Hi
I am using below query to display mismatch records between two tables
SELECT * FROM table1
EXCEPT
SELECT * FROM table2
UNION
SELECT * FROM table2
EXCEPT
SELECT * FROM table1
This displays mismatched records like below
Sunil 1000 india
Sunil 1500 india
I would like to display even the table names in the result For ex;
Sunil 1000 india Table1
Sunil 1500 india Table2
Can you please help us in this regard.cnk_gr's query should work for you.
One change that I would make is to use UNION ALL, not UNION. UNION eliminates duplicate rows, which means SQL has to do additional work (sort the result and then check for duplicates).
So if you can have duplicates and don't want them in your result, then you would use UNION. And if you can have duplicates and you want the duplicates in the result, you would use UNION ALL. But in cases like this, where you know you cannot have
duplicates (because column 1 contains 'TABLE1' for every row in the first half and column 1 contains 'TABLE2' for every row returned from the second half of the query), you should always use UNION ALL. It will be more efficient.
Tom -
Calculating the size of each record in a table?
Hi to all,
I trying to create histograms based on the unique record sizes in a particular table. However , in order to do that I need to calculate the size of each record in the table (in kilobytes preferably) and to get a list of unique record sizes.
Is there a function or easy way to calculate the size in Kbytes of a record in a table?
Thank you in advance!
TonyHi,
You can use the sum of the average of the vsizes of the fields in the table. For example:TEST.SQL>CREATE TABLE TEST
2 (
3 A VARCHAR2(50 CHAR),
4 B NUMBER
5 ) TABLESPACE TOOLS;
Table created.
TEST.SQL>INSERT INTO TEST VALUES('&1',&2);
Enter value for 1: A
Enter value for 2: 10
old 1: INSERT INTO TEST VALUES('&1',&2)
new 1: INSERT INTO TEST VALUES('A',10)
1 row created.
TEST.SQL>/
Enter value for 1: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Enter value for 2: 100000
old 1: INSERT INTO TEST VALUES('&1',&2)
new 1: INSERT INTO TEST VALUES('ABCDEFGHIJKLMNOPQRSTUVWXYZ',100000)
1 row created.
TEST.SQL>COMMIT;
Commit complete.
TEST.SQL>SELECT AVG(VSIZE(A)) + AVG(vSIZE(B)) FROM TEST;
AVG(VSIZE(A))+AVG(VSIZE(B))
15.5 The average line size - from the data in the table NOW - is 15.5 bytes.
HTH,
Yoann. -
Can we implement the custom sql query in CR for joining the two tables
Hi All,
Is there anyway to implement the custom sql query in CR for joining the two tables?
My requirement here is I need to write sql logics for joining the two tables...
Thanks,
GanaIn the Database Expert, expand the Create New Connection folder and browse the subfolders to locate your data source.
Log on to your data source if necessary.
Under your data source, double-click the Add Command node.
In the Add Command to Report dialog box, enter an appropriate query/command for the data source you have opened.
For example:
SELECT
Customer.`Customer ID`,
Customer.`Customer Name`,
Customer.`Last Year's Sales`,
Customer.`Region`,
Customer.`Country`,
Orders.`Order Amount`,
Orders.`Customer ID`,
Orders.`Order Date`
FROM
Customer Customer INNER JOIN Orders Orders ON
Customer.`Customer ID` = Orders.`Customer ID`
WHERE
(Customer.`Country` = 'USA' OR
Customer.`Country` = 'Canada') AND
Customer.`Last Year's Sales` < 10000.
ORDER BY
Customer.`Country` ASC,
Customer.`Region` ASC
Note: The use of double or single quotes (and other SQL syntax) is determined by the database driver used by your report. You must, however, manually add the quotes and other elements of the syntax as you create the command.
Optionally, you can create a parameter for your command by clicking Create and entering information in the Command Parameter dialog box.
For more information about creating parameters, see To create a parameter for a command object.
Click OK.
You are returned to the Report Designer. In the Field Explorer, under Database Fields, a Command table appears listing the database fields you specified.
Note:
To construct the virtual table from your Command, the command must be executed once. If the command has parameters, you will be prompted to enter values for each one.
By default, your command is called Command. You can change its alias by selecting it and pressing F2. -
MDM API to read the Record Key Mapping table
Hi,
Does anybody know what class/method I can use to read the Record Key Mapping table?
For the Business Partner table the Key Mapping table has this columns:
<u>Default / MDM Partner ID / Remote System / Key</u>
I have everything but the Key. How can I read it?
Thanks in advance,
Diego.GetKey Mapping is one of the available Web Services as of SP4.
Else you could use the Java API to get the Key Mapping.
<b>CatalogData class</b> has the following method
<b>GetKeyMapping</b>
public java.lang.String[][] GetKeyMapping(java.lang.String agency,
java.lang.String table,
int[] recordIDs,
boolean isDefaultKeyOnly)
throws StringExceptionRetrieves the key mapping for each record.
Parameters:
agency - the agency name.
table - the table name.
recordIDs - the list of records.
isDefaultKeyOnly - True to retrieve only the default value, False to all key values.
Returns: the key values for each record. -
How to call webservice for each record in a table using ODI
Hi
I am new to ODI and Webservice. I want to invoke a scenario in ODI using web service. I hava a weblogic application server with axis 2 deployed.
But I want call webservice for each record in a table
For eg: "EMP" table have 50 records, for each record web service should invoke
Can any one help me on it.
Thanks,
phani
Edited by: user12774166 on Jun 6, 2010 11:16 PMIf your goal is "call" a web service, Jason's Straub's [flex-ws-api|https://flex-ws-api.samplecode.oracle.com/] is by far the best I've seen. You might want read more about it on [his blog|http://jastraub.blogspot.com/search?q=+flex_ws_api+].
Tyler Muth
http://tylermuth.wordpress.com
[Applied Oracle Security: Developing Secure Database and Middleware Environments|http://sn.im/aos.book] -
PLEASE SEND ME SQL query to list ALL CONSTRAINTS ON EMPLOYEES TABLE FROM OU
PLEASE SEND ME SQL query to list ALL CONSTRAINTS ON EMPLOYEES TABLE FROM OUTSIDE PP SCHEMA INCLUDING SCHEMA NAME AND CONSTraint NAME
Username : PP
Table : EmployeesI think you are looking for below query :
SQL> SHOW USER;
USER is "SCOTT"
SQL> select owner,constraint_name,constraint_type,table_name,r_owner,r_constraint_name
2 from all_constraints
3 where constraint_type='R'
4 and r_constraint_name in (select constraint_name from all_constraints
5 where constraint_type in ('P','U') and table_name='EMP');
OWNER CONSTRAINT_NAME C TABLE_NAME R_OWNER R_CONSTRAINT_NAME
TEST1 ERL_EMP_FK_1 R EMPLOYEE SCOTT PK_EMP
1 row selected.Means, TEST1 user is having a constraint ERL_EMP_FK_1 on his table EMPLOYEE. Which is using PK_EMP (primary key of SCOTT user's 'EMP' [in the query])
Regards
Girish Sharma -
Need help for SQL SELECT query to fetch XML records from Oracle tables having CLOB field
Hello,
I have a scenario wherein i need to fetch records from several oracle tables having CLOB fields(which is holding XML) and then merge them logically to form a hierarchy XML. All these tables are related with PK-FK relationship. This XML hierarchy is having 'OP' as top-most root node and ‘DE’ as it’s bottom-most node with One-To-Many relationship. Hence, Each OP can have multiple GM, Each GM can have multiple DM and so on.
Table structures are mentioned below:
OP:
Name Null Type
OP_NBR NOT NULL NUMBER(4) (Primary Key)
OP_DESC VARCHAR2(50)
OP_PAYLOD_XML CLOB
GM:
Name Null Type
GM_NBR NOT NULL NUMBER(4) (Primary Key)
GM_DESC VARCHAR2(40)
OP_NBR NOT NULL NUMBER(4) (Foreign Key)
GM_PAYLOD_XML CLOB
DM:
Name Null Type
DM_NBR NOT NULL NUMBER(4) (Primary Key)
DM_DESC VARCHAR2(40)
GM_NBR NOT NULL NUMBER(4) (Foreign Key)
DM_PAYLOD_XML CLOB
DE:
Name Null Type
DE_NBR NOT NULL NUMBER(4) (Primary Key)
DE_DESC NOT NULL VARCHAR2(40)
DM_NBR NOT NULL NUMBER(4) (Foreign Key)
DE_PAYLOD_XML CLOB
+++++++++++++++++++++++++++++++++++++++++++++++++++++
SELECT
j.op_nbr||'||'||j.op_desc||'||'||j.op_paylod_xml AS op_paylod_xml,
i.gm_nbr||'||'||i.gm_desc||'||'||i.gm_paylod_xml AS gm_paylod_xml,
h.dm_nbr||'||'||h.dm_desc||'||'||h.dm_paylod_xml AS dm_paylod_xml,
g.de_nbr||'||'||g.de_desc||'||'||g.de_paylod_xml AS de_paylod_xml,
FROM
DE g, DM h, GM i, OP j
WHERE
h.dm_nbr = g.dm_nbr(+) and
i.gm_nbr = h.gm_nbr(+) and
j.op_nbr = i.op_nbr(+)
+++++++++++++++++++++++++++++++++++++++++++++++++++++
I am using above SQL select statement for fetching the XML records and this gives me all related xmls for each entity in a single record(OP, GM, DM. DE). Output of this SQL query is as below:
Current O/P:
<resultSet>
<Record1>
<OP_PAYLOD_XML1>
<GM_PAYLOD_XML1>
<DM_PAYLOD_XML1>
<DE_PAYLOD_XML1>
</Record1>
<Record2>
<OP_PAYLOD_XML2>
<GM_PAYLOD_XML2>
<DM_PAYLOD_XML2>
<DE_PAYLOD_XML2>
</Record2>
<RecordN>
<OP_PAYLOD_XMLN>
<GM_PAYLOD_XMLN>
<DM_PAYLOD_XMLN>
<DE_PAYLOD_XMLN>
</RecordN>
</resultSet>
Now i want to change my SQL query so that i get following output structure:
<resultSet>
<Record>
<OP_PAYLOD_XML1>
<GM_PAYLOD_XML1>
<GM_PAYLOD_XML2> .......
<GM_PAYLOD_XMLN>
<DM_PAYLOD_XML1>
<DM_PAYLOD_XML2> .......
<DM_PAYLOD_XMLN>
<DE_PAYLOD_XML1>
<DE_PAYLOD_XML2> .......
<DE_PAYLOD_XMLN>
</Record>
<Record>
<OP_PAYLOD_XML2>
<GM_PAYLOD_XML1'>
<GM_PAYLOD_XML2'> .......
<GM_PAYLOD_XMLN'>
<DM_PAYLOD_XML1'>
<DM_PAYLOD_XML2'> .......
<DM_PAYLOD_XMLN'>
<DE_PAYLOD_XML1'>
<DE_PAYLOD_XML2'> .......
<DE_PAYLOD_XMLN'>
</Record>
<resultSet>
Appreciate your help in this regard!Hi,
A few questions :
How's your first query supposed to give you an XML output like you show ?
Is there something you're not telling us?
What's the content of, for example, <OP_PAYLOD_XML1> ?
I don't think it's a good idea to embed the node level in the tag name, it would make much sense to expose that as an attribute.
What's the db version BTW? -
Need sql query to find ten records in sequential manner
Plz help me
I need to have ten records on my page. at the bottom of the page, i want to dispaly the number of pages that have records , just as a google page shows at the bottom. if the moves user moves to the next page , the next ten records must be displayed. suppose the user selects and clicks 5th page then the records on that page are displayed.How can i write the sql query corresponding to this specificationi don't want all records to be fetched at the same time and put on the server, rather whenever the page is opened , the corresponding records are fetched and displayedHi
Maybe you should use a CachedRowSet.
Look this:
http://developer.java.sun.com/developer/technicalArticles/javaserverpages/cachedrowset/
This page has a example that will help you. -
SQL Query to retrieve the records
Hi All,
I have one table. It contains millions of records.I gave the query as follows.
select * from emp where empnob in (1,1000)
it displays empnob
1 A 300000 Manager
6 B 120000 Analyst
87 C 32980 salsman
Now I want to retrieve remaining records. Pelase let me know the query which are not available in emp table between the given limit.
Thank you.Hi ,
For example there are 10 records only.
I gave
select * from emp where empno in (1,10)
t displays the records having the empnos 1,3,4,6,8
Now I want to display the records 2,5,7,9,10 also...
Please let me know the query.Are use using an oracle database? My Oracle database would never return such a result for your query.
Please post some output from an sqlplus session where you show us exactly what you do.
Message was edited by:
Sven W. -
Sql query to bring single record from right side of a table
hi
I have two tables as below:
create table testsh1 ( idd varchar2(10), name varchar2(20));
create table testsh2 ( idd varchar2(10), balance float );
insert into testsh1 values('1','abc');
insert into testsh1 values('2','def');
insert into testsh1 values('3','ghi');
insert into testsh1 values('4','jkl');
insert into testsh1 values('4','jkl');
insert into testsh1 values('3','ghi');
insert into testsh2 values('1',500);
insert into testsh2 values('1',500);
insert into testsh2 values('3',1000);
insert into testsh2 values('3',1000);
insert into testsh2 values('4',1500);
insert into testsh2 values('4',1500);
insert into testsh2 values('1',500);
I am expecting the result below:
1 abc 500
2 def NULL
3 ghi 1000
3 ghi 1000
4 jkl 1500
4 jkl 1500
That is only records from testsh1 table can come as many times but from testsh2 only we need to bring unique and matching records on column idd.
Please help
ThanksHi Shavetha,
As the testsh2 has duplicates of each record, the DISTINCT of the record has to be record has to be applied.
Please Try this,
SELECT IDD, NAME, (SELECT DISTINCT BALANCE
FROM TESTSH2 B
WHERE B.IDD = A.IDD) BALANCE
FROM TESTSH1 A;Which Outputs:
IDD NAME BALANCE
1 abc 500
2 def
3 ghi 1000
4 jkl 1500
4 jkl 1500
3 ghi 1000Thanks,
Shankar
Maybe you are looking for
-
Firefox was working fine. My computer shut down due to battery draining, and when I restarted I couldn't open Firefox again. I've tried redownloading and installing new, opening in safe mode, updating all plug-ins, etc., still nothing. Any suggestion
-
Hi, While Installing AIA FP 2.4 on Weblogic 9.2 using FPWLInstall.xml, I got the following Error.. BUILD FAILED D:\AIA_HOME\Infrastructure\install\wlscripts\FPWLInstall.xml:218: The following error occurred while executing this line: D:\AIA_HOME\Infr
-
Reorder playlists in iTunes sidebar
Is there a way to reorder playlists in the iTunes sidebar? I'm not looking to reorder songs in a playlist, but the actual playlists. I thought I remember being able to do this in the past, but can't seem to do it with the latest version of iTunes (7.
-
Hi, i have a problem when a try to send long texts to a smartform. when i fill in the long texts in change request, the program won't make a notification, only a log. i would like to have the long texts in the smartform. could anybody help me with th
-
Incredibly slow Browsing in finder over VPN
I VPN into my work server - I'll be honest I don't know what server setup they are using other than it is Windows based - regardless, I get wonderful speeds browsing on an XP box but dismal if not Finder Killing speeds on my Mac just trying to get a