09-15-2008
split a single sql file into multiple files
Hi Rubin,
Thanks your solution works!
awk '/CREATE TABLE/{ n++; print > (f="out_" n); close(f)}' RS= alltables
but,i have close to 183 "create table" scripts in my file and the above crashes out with the error:
awk: too many output files 10
record number 11
The second solution GIVES:
awk '/CREATE TABLE/{f=0 ;n++; print >(file="out_" n); close("out_" n-1)} f{ print > file}; /CREATE TABLE/{f=1}' alltables
awk: syntax error near line 1
awk: bailing out near line 1
Please let me know -how can we increase the size from 10 to 200.
Thanks
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
Please help me out.
I have around 700 sql files to execute in a defined order, how can i do it from shell script (3 Replies)
Discussion started by: anushilrai
3 Replies
2. Shell Programming and Scripting
I have a file ehich has multiple create statements as
create abc 123
one
two
create xyz 456
four
five
create nnn 666
six
four
I want to separte each create statement in seperate files (3 Replies)
Discussion started by: glamo_2312
3 Replies
3. Programming
Is there anyway to spool my select statement into spool files of max 10000 records each?
eg I have a select statement that will return 45000 records.
A normal spool command will output the 45000 into just one spool file.
How can I make sqlplus do this?
00001 - 10000 records --- spool... (3 Replies)
Discussion started by: Leion
3 Replies
4. Shell Programming and Scripting
Dear All,
I would like to split a file of the following format into multiple files based on the number in the 6th column (numbers 1, 2, 3...):
ATOM 1 N GLY A 1 -3.198 27.537 -5.958 1.00 0.00 N
ATOM 2 CA GLY A 1 -2.199 28.399 -6.617 1.00 0.00 ... (3 Replies)
Discussion started by: tomasl
3 Replies
5. Shell Programming and Scripting
Let's assume that I have a file name called ‘A' and it has 100 lines in it and would like to split these 100 lines into 4 files as specified bellow.
INPUT: Input file name A
1
2
3
4
5
6
7
8
9
........100
Output: 4 output files (x,y,z,w)
File x should contains (Skip 4 lines)... (15 Replies)
Discussion started by: subbarao25
15 Replies
6. Shell Programming and Scripting
Hi!
I would like to do a single connection to sqlplus and execute some querys.
Actually I do for every query one connection to database
i.e
echo 'select STATUS from v$instance;
exit' > $SQL_FILE
sqlplus user/pass@sid @$SQL_FILE > $SELECT_RESULT
echo 'select VERSION from v$instance;... (6 Replies)
Discussion started by: guif
6 Replies
7. UNIX for Dummies Questions & Answers
Hi,
I am new to unix. we have a requirement here to split a single file into multiples files based on the number of people available for processing. So i tried my hand at writing some code as below.
#!/bin/bash
var1=`wc -l $filename`
var2=$var1/$splitno
split -l $var2 $1
Please help me... (6 Replies)
Discussion started by: quirkguy
6 Replies
8. Shell Programming and Scripting
I have one single shown below and I need to break each ST|850 & SE to separate file using unix script. Below example should create 3 files. We can use ST & SE to filter as these field names will remain same.
Please advice with the unix code.
ST|850
BEG|PO|1234
LIN|1|23
SE|4
ST|850... (3 Replies)
Discussion started by: prasadm
3 Replies
9. UNIX for Dummies Questions & Answers
input file:
AD,00,--,---,---,---,---,---,---,--,--,---
AM,000,---,---,---,---,---,---
AR, ,---,--,---,---
AA,---,---,---,---
AT,---
AU,---,---,---
AS,---,---
AP,---,---,---
AI,---
AD,00,---,---,---, ,---,---,---,---,---,---
AM,000,---,---,---
AR,... (6 Replies)
Discussion started by: kcdg859
6 Replies
10. Shell Programming and Scripting
Hi All,
I have the sales_data.csv file in the directory as below.
SDDCCR; SOM ; MD6546474777 ;05-JAN-16
ABC ; KIRAN ; CB789 ;04-JAN-16
ABC ; RAMANA; KS566767477747 ;06-JAN-16
ABC ; KAMESH; A33535335 ;04-JAN-16
SDDCCR; DINESH; GD6674474747 ;08-JAN-16... (4 Replies)
Discussion started by: ROCK_PLSQL
4 Replies
LEARN ABOUT SUSE
select_into
SELECT
INTO(7) SQL Commands SELECT INTO(7)
NAME
SELECT INTO - define a new table from the results of a query
SYNOPSIS
[ WITH [ RECURSIVE ] with_query [, ...] ]
SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]
* | expression [ [ AS ] output_name ] [, ...]
INTO [ TEMPORARY | TEMP ] [ TABLE ] new_table
[ FROM from_item [, ...] ]
[ WHERE condition ]
[ GROUP BY expression [, ...] ]
[ HAVING condition [, ...] ]
[ WINDOW window_name AS ( window_definition ) [, ...] ]
[ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]
[ ORDER BY expression [ ASC | DESC | USING operator ] [ NULLS { FIRST | LAST } ] [, ...] ]
[ LIMIT { count | ALL } ]
[ OFFSET start [ ROW | ROWS ] ]
[ FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY ]
[ FOR { UPDATE | SHARE } [ OF table_name [, ...] ] [ NOWAIT ] [...] ]
DESCRIPTION
SELECT INTO creates a new table and fills it with data computed by a query. The data is not returned to the client, as it is with a normal
SELECT. The new table's columns have the names and data types associated with the output columns of the SELECT.
PARAMETERS
TEMPORARY or TEMP
If specified, the table is created as a temporary table. Refer to CREATE TABLE [create_table(7)] for details.
new_table
The name (optionally schema-qualified) of the table to be created.
All other parameters are described in detail under SELECT [select(7)].
NOTES
CREATE TABLE AS [create_table_as(7)] is functionally similar to SELECT INTO. CREATE TABLE AS is the recommended syntax, since this form of
SELECT INTO is not available in ECPG or PL/pgSQL, because they interpret the INTO clause differently. Furthermore, CREATE TABLE AS offers a
superset of the functionality provided by SELECT INTO.
Prior to PostgreSQL 8.1, the table created by SELECT INTO included OIDs by default. In PostgreSQL 8.1, this is not the case -- to include
OIDs in the new table, the default_with_oids configuration variable must be enabled. Alternatively, CREATE TABLE AS can be used with the
WITH OIDS clause.
EXAMPLES
Create a new table films_recent consisting of only recent entries from the table films:
SELECT * INTO films_recent FROM films WHERE date_prod >= '2002-01-01';
COMPATIBILITY
The SQL standard uses SELECT INTO to represent selecting values into scalar variables of a host program, rather than creating a new table.
This indeed is the usage found in ECPG (see in the documentation) and PL/pgSQL (see in the documentation). The PostgreSQL usage of SELECT
INTO to represent table creation is historical. It is best to use CREATE TABLE AS for this purpose in new code.
SEE ALSO
CREATE TABLE AS [create_table_as(7)]
SQL - Language Statements 2010-05-14 SELECT INTO(7)