Sponsored Content
Top Forums Shell Programming and Scripting Using shell to generate case statement Post 303000281 by Torhong on Friday 7th of July 2017 11:16:10 PM
Old 07-08-2017
Using shell to generate case statement

Hi Gurus,

I have a very weird requirement and have no clue to resolve the issue. please help me get out this difficulty
below two tables, table1 contains the column name. D means this column used for the rule. for example: rule 0 is all columns have value, rule1 is col3 and col7 have no value. the case statement is based on table1 key order. 0 first, then 1...

table2 contains the column values.
the requirement is: based on table2 listed value write a case statement
below data the case statement is

Code:
case when COL1 = 'V' AND COL2 = 'B' AND COL3 = 'C' AND P_CODE = 0 AND M_SRC = 5 AND M_FEC = 0 AND SEC_TYP = 1 THEN 1
WHEN COL1 = 'V' AND COL2 = 'B' AND P_CODE = 0 AND M_SRC = 5 AND M_FEC = 0  THEN 2
WHEN COL1 = 'V' AND COL2 = 'I' AND  P_CODE = 0 AND M_FEC = 0 THEN 3
WHEN COL1 = 'F' AND COL2 = 'B' AND P_CODE = 0 AND M_SRC = 5 AND M_FEC = 0 THEN 4
END


table1
Code:
key	SRC1	SRC2	SRC3	SRC4	SRC5	SRC6	SRC7
0	COL1    COL2    COL3	P_CODE	M_SRC	M_FEC	SEC_TYP
1	COL1	COL2	D	P_CODE	M_SRC	M_FEC	D
2	COL1	COL2	COL3	D	M_SRC	D	D
3	COL1	COL2	D	D	M_SRC	M_FEC	SEC_TYP
4	COL1	COL2	D	D	M_SRC	D	SEC_TYP

table2
Code:
COL1	 COL2	COL3	P_CODE	M_SRC	M_FEC	SEC_TYP	RESULT
V	B	C	0	5	0	1	1
V	B		0	6	0		2
V	I		0		0		3
F	B		0	5	0		4

thanks in advance
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script automation using case statement

Hi, I'm trying to write a shell script that has a menu and then dependant on the selection, will automate some samba file transfer. The problem is when I run the code without the case statement it runs fine. but when I put the case statement in the only way I can get the code to run is to... (6 Replies)
Discussion started by: ianf
6 Replies

2. Shell Programming and Scripting

what is problem with this small shell script.. case statement related

Hi All, this small script is written to recognize user input character.. it is in small case .. upeer case or is a number... but when i input first capital letter say A.. it always gives small character.... what is the problem. #!/bin/bash echo "Enter the character" read a case $a in )... (2 Replies)
Discussion started by: johnray31
2 Replies

3. Shell Programming and Scripting

shell script case statement

In a case statement like below : case $rental in "car") echo "For $rental Rs.20 per k/m";; "van") echo "For $rental Rs.10 per k/m";; "jeep") echo "For $rental Rs.5 per k/m";; "bicycle") echo "For $rental 20 paisa per k/m";; *) echo "Sorry, I can not gat a $rental for you";;... (4 Replies)
Discussion started by: sriram003
4 Replies

4. Shell Programming and Scripting

Shell case statement

echo -e "Select: \c" read IN pattern="1-20" case $IN in ) echo "Selected: $IN" ;; *) echo "Invalid selection: $IN" ;; esac # sh test Select: 10 Invalid selection: 10 # sh test Select: 2 (6 Replies)
Discussion started by: Ikon
6 Replies

5. Shell Programming and Scripting

Case Statement

Hey, guys I really need some help with a project. "Write a shell program that examines the command line arguments, counts and collects the number of options. Basically it has to collect and count the arguments that start with a "-" and the one's that don't start with a - I know I have to use... (2 Replies)
Discussion started by: sk192010`
2 Replies

6. Shell Programming and Scripting

Pass values to case statement in a function korn shell

I'm in the process of writng a function that consists of a case statement is there a way of calling the function and passing a value to it? ie function1 () { case opt1 do ..... opt2 do..... esac } function opt1 I'm aware the syntax is not correct, but you get the general idea. (1 Reply)
Discussion started by: squrcles
1 Replies

7. Shell Programming and Scripting

Generate sql statement using shell scripting

Can anyone please assist me? I have attached 2 input files and one output file. I need to generate the sql update statements using the above 2 input files. if inputfile2 has 5 rows, then we should generate 5 update statements because column1 is unique. inputfile1 and inputfile2 may contain more... (10 Replies)
Discussion started by: vinus
10 Replies

8. Shell Programming and Scripting

Case statement in UNIX shell script

have written the below code to check whether the string received from user is a file name or dir using case statement, but its going into default case*). #!/bin/sh #Get a string from user and check whether its a existing filename or not rm str2 rm str3 echo "enter a file \c" read fil... (8 Replies)
Discussion started by: Mohan0509
8 Replies

9. Shell Programming and Scripting

Shell scripting with case statement

Foe example we have three environments int,qa and prod.Each environment has some number of servers. int=Server1,Server2,Server3 qa=Server4,Server5,Server6 prod=Server7,Server8,Server9 echo "Enter the Environment i.e int,qa,prod" read env case $env in int) ## Need command where all the... (9 Replies)
Discussion started by: nareshreddy443
9 Replies

10. Shell Programming and Scripting

Shell script run in a case statement call to run a php file, also Perl

Linux System having all Perl, Python, PHP (and Ruby) installed From a Shell script, can call a Perl, Python, PHP (or Ruby ?) file eg eg a Shell script run in a case statement call to run a php file, also Perl or/and Python file??? Like #!/usr/bin/bash .... .... case $INPUT_STRING... (1 Reply)
Discussion started by: hoyanet
1 Replies
MYSQL_FETCH_ARRAY(3)							 1						      MYSQL_FETCH_ARRAY(3)

mysql_fetch_array - Fetch a result row as an associative array, a numeric array, or both

SYNOPSIS
Warning This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include: omysqli_fetch_array(3) o PDOStatement::fetch array mysql_fetch_array (resource $result, [int $result_type = MYSQL_BOTH]) DESCRIPTION
Returns an array that corresponds to the fetched row and moves the internal data pointer ahead. o $ result -The result resource that is being evaluated. This result comes from a call to mysql_query(3). o $result_type - The type of array that is to be fetched. It's a constant and can take the following values: MYSQL_ASSOC, MYSQL_NUM, and MYSQL_BOTH. Returns an array of strings that corresponds to the fetched row, or FALSE if there are no more rows. The type of returned array depends on how $result_type is defined. By using MYSQL_BOTH (default), you'll get an array with both associative and number indices. Using MYSQL_ASSOC, you only get associative indices (as mysql_fetch_assoc(3) works), using MYSQL_NUM, you only get number indices (as mysql_fetch_row(3) works). If two or more columns of the result have the same field names, the last column will take precedence. To access the other column(s) of the same name, you must use the numeric index of the column or make an alias for the column. For aliased columns, you cannot access the con- tents with the original column name. Example #1 Query with aliased duplicate field names SELECT table1.field AS foo, table2.field AS bar FROM table1, table2 Example #2 mysql_fetch_array(3) with MYSQL_NUM <?php mysql_connect("localhost", "mysql_user", "mysql_password") or die("Could not connect: " . mysql_error()); mysql_select_db("mydb"); $result = mysql_query("SELECT id, name FROM mytable"); while ($row = mysql_fetch_array($result, MYSQL_NUM)) { printf("ID: %s Name: %s", $row[0], $row[1]); } mysql_free_result($result); ?> Example #3 mysql_fetch_array(3) with MYSQL_ASSOC <?php mysql_connect("localhost", "mysql_user", "mysql_password") or die("Could not connect: " . mysql_error()); mysql_select_db("mydb"); $result = mysql_query("SELECT id, name FROM mytable"); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { printf("ID: %s Name: %s", $row["id"], $row["name"]); } mysql_free_result($result); ?> Example #4 mysql_fetch_array(3) with MYSQL_BOTH <?php mysql_connect("localhost", "mysql_user", "mysql_password") or die("Could not connect: " . mysql_error()); mysql_select_db("mydb"); $result = mysql_query("SELECT id, name FROM mytable"); while ($row = mysql_fetch_array($result, MYSQL_BOTH)) { printf ("ID: %s Name: %s", $row[0], $row["name"]); } mysql_free_result($result); ?> Note Performance An important thing to note is that using mysql_fetch_array(3) is not significantly slower than using mysql_fetch_row(3), while it provides a significant added value. Note Field names returned by this function are case-sensitive. Note This function sets NULL fields to the PHP NULL value. mysql_fetch_row(3), mysql_fetch_assoc(3), mysql_data_seek(3), mysql_query(3). PHP Documentation Group MYSQL_FETCH_ARRAY(3)
All times are GMT -4. The time now is 01:19 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy