Min and Max in a row!
Hi guys,.
Do you know how I can get the MIN and MAX in a row?
For example:
C1 | C2 | C3 | C4 | C5 | C6 | C7 | C8
10. 50. 70. 5. 90. 135. 4 | 60
I return 4 and 135.
I can return it without using the service?
Thank you
Eric
create table t as with d as ( select 1 n from dual union all select null from dual ) select a.n c1, b.n*2 c2, c.n*3 c3 from d a, d b, d c; select c1,c2,c3, greatest( coalesce(c1,c2,c3), coalesce(c2,c3,c1), coalesce(c3,c1,c2) ) greatest_c, least( coalesce(c1,c2,c3), coalesce(c2,c3,c1), coalesce(c3,c1,c2) ) least_c from t;
C1 | C2 | C3 | GREATEST_C | LEAST_C |
---|---|---|---|---|
1 | 2 | 3 | 3 | 1 |
1 | 2 | 2 | 1 | |
1 | 3 | 3 | 1 | |
1 | 1 | 1 | ||
2 | 3 | 3 | 2 | |
2 | 2 | 2 | ||
3 | 3 | 3 | ||
Tags: Database
Similar Questions
-
Grouping and then find the min and max
DROP TABLE purge of y;
CREATE TABLE y
(
ID NUMBER (10),
START_DATE_TIME NUMBER (15),
END_DATE_TIME NUMBER (15)
);INSERT INTO y VALUES (1, 20140602164819, 20140606140851);
INSERT INTO y VALUES (1, 20140827141743, 20140827142131);
INSERT INTO y VALUES (1, 20140827141744, 20140827141835);
INSERT INTO y VALUES (1, 20140827141744, 20140827142131);
INSERT INTO y VALUES (1, 20140827141944, 20140827142131);
INSERT INTO y VALUES (1, 20140827141944, 20140924142131);
INSERT INTO y VALUES (1, 20140927141944, 20141027142131);
INSERT INTO y VALUES (2, 20140602164819, 20140606140851);
INSERT INTO y VALUES (2, 20140827141743, 20140827142131);
INSERT INTO y VALUES (2, 20140827141744, 20140827141835);
INSERT INTO y VALUES (2, 20140827141744, 20140827142131);
INSERT INTO y VALUES (2, 20140827141944, 20140827142131);
INSERT INTO y VALUES (2, 20140827141944, 20140924142131);
INSERT INTO y VALUES (2, 20140927141944, 20141027142131);COMMIT;
Select
*
Of
There
order by 2, 3;out necessary: when the output of the table are sorted by start_date_time and end_date_time in ascending order.
and when the value of for a particular id start_date_time is located between the
another set of values start_date_time and end_date_time for the same id then min (start_date_time) and max (end_date_time) is the desired output.and if there is no overlap then (start_date_time) min and max (end_date_time) is the output desired.
and for each line of the output in ascending order of line number order addd;
Example output is in the output table named
drop table output is serving;
create an output table
(
ID NUMBER (10),
START_DATE_TIME NUMBER (15),
END_DATE_TIME NUMBER (15),
ROW_NUMBER NUMBER (10)
);
Values to INSERT OUTPUT (1, 20140602164819, 20140606140851, 1);
Values to INSERT OUTPUT (1, 20140827141743, 20140924142131, 2);
Values to INSERT OUTPUT (1, 20140927141944, 20141027142131, 3);
Values to INSERT OUTPUT (2, 20140602164819, 20140606140851, 1);
Values to INSERT OUTPUT (2, 20140827141743, 20140924142131, 2);
Values to INSERT OUTPUT (2, 20140927141944, 20141027142131, 3);COMMIT;
SELECT
*
Of
output
ORDER BY 1,2,3,4;Thank you
SQL_Novice
Hello
Your postal code. It is difficult to tell what you're doing wrong without knowing what you are doing.
user6166680 wrote:
Hi Frank:
Max works for ID 3 values only because there is only one group here, as all other values compared, they overlap with max (end_date_time);
but when I use MAX for ID 1 and 2, the result set is not the same thing as LAG works because there is a GAP...
Exactly, you have to find the gaps. If start_date_time is less than or equal to the MAXIMUM of all the end_date_times earlier, then it isn't a gap; Otherwise, there is a gap.
What is the problem with MAX?
WITH got_new_group AS
(
SELECT id, start_date_time and end_date_time
CASE
WHEN start_date_time <= >= > MAX (end_date_time) OVER (PARTITION BY id )
ORDER BY start_date_time
end_date_time
ROWS BETWEEN UNBOUNDED PRECEDING
AND 1 PRECEDING
)
THEN 0
1. OTHER
END AS new_group
OF y
)
got_group_number AS
(
SELECT id, start_date_time and end_date_time
SUM (new_group) OVER (PARTITION BY ID.
ORDER BY start_date_time
end_date_time
) AS group_number
OF got_new_group
)
SELECT id
MIN (start_date_time) AS group_start_date_time
MAX (end_date_time) AS group_end_date_time
group_number
OF got_group_number
GROUP BY id, group_number
ORDER BY id, group_number
;
You will notice that it is exactly what I posted earlier, in response #5, except that instead of using the OFFSET it uses MAX.
Output:
ID GROUP_START_DATE_TIME GROUP_END_DATE_TIME GROUP_NUMBER
--------------- --------------------- ------------------- ---------------
1 20140602164819 20140606140851 1
1 20140827141743 20140924142131 2
1 20140927141944 20141027142131 3
2 20140602164819 20140606140851 1
2 20140827141743 20140924142131 2
2 20140927141944 20141027142131 3
3 20140330041350 47121231000000 1
-
Help the query to list all the days between MIN and MAX date in a table
Hello
Sorry, this may have already responded earlier, but I really struggled to find a previous response with the new provision of the RTO.
In a DB 11 g, I date MIN and MAX in a table:
{code}
SELECT MIN (process_date) start_date, MAX (process_date) end_date FROM my_table;
{code}
I would get every day between these 2 dates. I mean even is there is no record in the table for a date.
Is this possible?
Thanks in advance,
Olivier
Hello
Do you mean something like this?
ranit@XE11GR2>> ed Wrote file c:\rb\1.sql 1 with xx as 2 ( 3 select 4 to_date('05-06-2013','dd-mm-yyyy') min_d, 5 to_date('20-06-2013','dd-mm-yyyy') max_d 6 from dual 7 ) 8 -- 9 -- end of test data 10 -- 11 select 12 min_d + level date_x 13 from xx 14* connect by level<=(max_d-min_d) ranit@XE11GR2>> / DATE_X ------------------- 06-06-2013 00:00:00 07-06-2013 00:00:00 08-06-2013 00:00:00 09-06-2013 00:00:00 10-06-2013 00:00:00 11-06-2013 00:00:00 12-06-2013 00:00:00 13-06-2013 00:00:00 14-06-2013 00:00:00 15-06-2013 00:00:00 16-06-2013 00:00:00 17-06-2013 00:00:00 18-06-2013 00:00:00 19-06-2013 00:00:00 20-06-2013 00:00:00 15 rows selected.
-
Please, advise how correctly find MIN and MAX dates.
The XML code:
Model:<DATES> <DT>2011-02-24</DT> <DT>2011-02-25</DT> <DT>2011-02-26</DT> <DT>2011-02-27</DT> <DT>2011-02-28</DT> </DATES>
The output:<?xdoxslt:minimum(DT)?> <?xdoxslt:maximum(DT)?>
Expected results:0 20110224
2011-02-24 2011-02-28
Hello
If your data is:
- 2008-10-04
1
- 2009-10-21
3
- 2009-11-05
4
- 2008-11-10
2
The maximum is given by: / ROWSET/ROW/DT [.. / DT_RANK = count (//ROW)]
and the minimum is: / ROWSET/ROW/DT [.. / DT_RANK = 1]There may be more effective, but it works.
concerning
Jorge
-
button conrol min and max range option during execution
Is it possible to change the window button conrol min and max Beach setting during execution?
Thank you very much Nick.
-
the min and MAX values maintain their good values tia sal22
the min and MAX values maintain their good values tia sal22
Hi all
I have problems a little value to stay in their correct min and max values min and max.
Continue to change their values (up and down) trying to get the max value to only display the maximum value at a given time and the same for the min value. I looked at the examples max and min and it seems that it should be in a while loop
http://forums.NI.com/NI/board/message?board.ID=170&thread.ID=359822but I would add another while loop and if so put it in the loop for? or is there a better way to do it.
TIA sal22
Hi sal22,
I thought it was just one example you found somewhere, because it is called red rooster. See the attached example.
Mike
-
Delete the min and max labels on chart axis markers
Hello
Is it possible to remove the min and max labels on chart axis markers? For example, see the screenshot below. Can I remove the numbers circled in green without changing the range of the axis? In some cases (like this one), the presence of the min and max number of cases other marker values to not be displayed (red line). I am aware that "10" is displayed if I enlarge the graph, but this isn't an option for my application. FYI - the screenshot is from the side before the attached VI.
Thanks for any help,
Kind regards
Stu
You can't delete them because they are the main features to be able to set the max and min on the graph of the Panel before if you use no-AutoScaling.
-
Hello. I want to make a program where I want to generate a sine and take only the monotonous positive part.
So I thought to find the min and max of the function index and make a program like the one attached.
As you can see that if you set the frequency to 10 Hz, it works fine... the problem is when you change the frequency such as 20 or 50 H.. t seems that it is not find the min and max correctly.
Can you suggest me some tips?
Thank you
s.turino84 wrote:
and take only positive part monotonous.
This means that the derivative is positive. So, make a derivative. If the derivative is greater than 0 keep the present value, or the value 0.
-
Taskbar and min and max do not show on the homepage and e-mail
When cleaning key board, the taskbar, and the top part of the page containing the min and max symbols disapperared. How can I restore them?
Hello
I suggest you to try the steps below and check if it helps.
(a) open Internet Explorer by pressing the button of the window of your keyboard, then clicking on Internet Explorer.
(b) move your cursor to the top right and click the Tools button, and then click file.
(c) uncheck the option full screen .
You can also press F11 on your keyboard, which would help you to get to the normal screen.
Hope this information is useful.
-
PanelBox including stretch between min and max height
Hello
I use JDeveloper 11.1.1.6 and my customer requests in the application I am developing a PanelBox stretching from its height according to the content inside. There is a minimum height (which may be greater than the height the content) and a maximum height (which, if the content exceeded, should display a scroll bar).
If you have any suggestions on how I could reach it (including editing the CSS file) please let me know.
Best regards
Toma
Hi Frank,.
I did this and, in combination with certain CSS styles, I managed to do things. The part that essentially does the work is the property of 'type' equal 'sink '. Styling covered the min-height and max-height, as well as other small visual changes.
Thank you very much!
-
Min and Max of the sequence number
Hello
I have a table called pins (lot number 4,
Sequence number (8)
);
I have data in the table:
batch sequence
386 100
386 101
386 102
386 800
386 801
1 387
2 387
I want to know by draw the low values and high for sequence number, is the result, I am looking
batch min (sequence), max (sequence)
386 100 102
386 800 801
387 1 2
Oracle 10g rel2
Thank youHello
You want something like this:
WITH got_grp AS ( SELECT lot , seq_num -- SEQUENCE is not a good column name , seq_num - ROW_NUMBER () OVER ( PARTITION BY lot ORDER BY seq_num ) AS grp FROM pins -- WHERE ... -- any filtering goes here ) SELECT lot , MIN (seq_num) AS min_seq_num , MAX (seq_num) AS max_seq_num FROM got_grp GROUP BY lot , grp ORDER BY lot , min_seq_num ;
If I understand the probem, you want to GROUP BY, but many does not define groups by itself: each contiguous set of seq_nums in a batch is a separate group. In each of these groups, the difference between seq_num and a meter which reflects the order of seq_num generated in the query (using ROW_NUMBER) will be constant.
This assumes that seq_num is an integer, and this (lot, seq_num) is unique.
If this is not the case, the above query will have a small adjustment.If you want to display the INSERT statements for your sample data, then I could test this.
-
Custom fonts: min and max maximum size on the font file?
Hello
What is the limit of file size (max and min) on the font file for loading custom fonts?
I have search the Forum and found a comment by Peter_strange.
"The documentation says 60 K or 90K depending on how load you, 90 K if you load a an InputStream memory."
But I want to be sure, share please if someone has the info.
Thank you.
Pradeep thanks for your clarification.
Now, I checked that there is no limit of min file size and maximum file size limit is 90 KB for load of cases and 60 KB in case of direct load flow.
I also have a resource good sample by peter_strange -.
-
Hi all
I'm new to powercli and try to create a script to list all clusters in a data center and all hosts in a cluster and calculate min, max and avg cpu usage and ram by the host and cluster. So far, I have tried the below but I can't publish the results of my script.
$Function = @)
ForEach ($DataCenter Get-Data Center)
{
ForEach ($cluster in ($DataCenter |)) Get - Cluster)) - need help to post the information here and confirm if this is correct or not.
{
ForEach ($hosts in ($cluster |)) Get - VMHost))
{
ForEach ($vms to ($hosts |)) Get - VM)) - do not know if I called you here functions properly
{
$allvms = @)
$allhosts = @)
$hosts = get-VMHost
$vms = get - Vm{foreach ($vms in $hosts)
$hoststat = "" | Select the host name, MemMax, MemAvg, MemMin, CPUMax, CPUAvg, CPUMin
$hoststat. Host name = $vmHost.name
$statcpu = get-Stat-entity ($vmHost) - start (get-date). AddDays(-30)-Finish (Get-Date) - MaxSamples 10000 - stat cpu.usage.average
$statmem = get-Stat-entity ($vmHost) - start (get-date). AddDays(-30)-Finish (Get-Date) - MaxSamples 10000 - stat mem.usage.average$cpu = $statcpu | Measure-object-property value - average - Maximum - Minimum
$mem = $statmem | Measure-object-property value - average - Maximum - Minimum
$hoststat. CPUMax = $cpu. Maximum
$hoststat. CPUAvg = $cpu. Average
$hoststat. CPUMin = $cpu. Minimum
$hoststat. MemMax = $mem. Maximum
$hoststat. MemAvg = $mem. Average
$hoststat. MemMin = $mem. Minimum
$allhosts += $hoststat
}
}
}
}
}$Function | Select the host name, MemMax, MemAvg, MemMin, CPUMax, CPUAvg, CPUMin | Export-Csv "c:\Function.csv" - noTypeInformation
Any help on this is much appreciated.
[Ordered] casting was introduced in v3 PowerShell.
For PowerShell v2, you can use
$vms = get - VM
$stat = 'cpu.usage.average ','mem.usage.average '.
$start = (get-Date). AddDays(-31)
$report = get-Stat-entity $vms - start $start - Stat $stat - ErrorAction SilentlyContinue |
Group-object - property {$_.} @entity.name} | %{
$cpu = $_. Group | where {$_.} MetricId - eq "cpu.usage.average"} | Measure-object-property value - average - Maximum - Minimum
$mem = $_. Group | where {$_.} MetricId - eq "mem.usage.average"} | Measure-object-property value - average - Maximum - Minimum
New-object PSObject-property @ {}
Datacenter = Get-Datacenter - VM $_. Group [0]. Entity | Select the name of ExpandProperty-
Cluster Cluster Get - VM = $_. Group [0]. Entity | Select the name of ExpandProperty-
VMHost = $_. Group [0]. Entity.Host.Name
Name = $_. Group [0]. @entity.name
CpuMin = $cpu. Minimum
CpuAvg = $cpu. Average
CpuMax = $cpu. Maximum
MemMin = $mem. Minimum
MemAvg = $mem. Average
MemMax = $mem. Maximum
}
}
$report | Sort-Object-property Datacenter, Cluster, VMHost name |
Export Csv report.csv - NoTypeInformation - UseCulture
-
Getting the values MIN and MAX of the table data
I have the table and the following records.
I need to get the highest and lowest credit / debit amount for each trans_id.create table test_bank ( trans_id number , trans_date date , trans_amt number , debit_credit_indicator varchar2(3) ) Insert into TEST_BANK (TRANS_ID, TRANS_DATE, TRANS_AMT, DEBIT_CREDIT_INDICATOR) Values (1, TO_DATE('01/17/2013 08:02:44', 'MM/DD/YYYY HH24:MI:SS'), 1099, 'cr'); Insert into TEST_BANK (TRANS_ID, TRANS_DATE, TRANS_AMT, DEBIT_CREDIT_INDICATOR) Values (1, TO_DATE('01/18/2013 08:03:02', 'MM/DD/YYYY HH24:MI:SS'), 800, 'cr'); Insert into TEST_BANK (TRANS_ID, TRANS_DATE, TRANS_AMT, DEBIT_CREDIT_INDICATOR) Values (1, TO_DATE('01/19/2013 08:03:18', 'MM/DD/YYYY HH24:MI:SS'), 500, 'db'); Insert into TEST_BANK (TRANS_ID, TRANS_DATE, TRANS_AMT, DEBIT_CREDIT_INDICATOR) Values (1, TO_DATE('01/20/2013 08:03:36', 'MM/DD/YYYY HH24:MI:SS'), 200, 'cr'); Insert into TEST_BANK (TRANS_ID, TRANS_DATE, TRANS_AMT, DEBIT_CREDIT_INDICATOR) Values (2, TO_DATE('01/22/2013 08:04:01', 'MM/DD/YYYY HH24:MI:SS'), 400, 'db'); Insert into TEST_BANK (TRANS_ID, TRANS_DATE, TRANS_AMT, DEBIT_CREDIT_INDICATOR) Values (2, TO_DATE('01/23/2013 08:04:16', 'MM/DD/YYYY HH24:MI:SS'), 345, 'cr'); Insert into TEST_BANK (TRANS_ID, TRANS_DATE, TRANS_AMT, DEBIT_CREDIT_INDICATOR) Values (2, TO_DATE('01/24/2013 08:04:33', 'MM/DD/YYYY HH24:MI:SS'), 600, 'db'); COMMIT;
I tried the SQL query below. Could you please let me know if a better solution.
Thank youselect distinct * from ( select trans_id , case when debit_credit_indicator ='db' then max(trans_amt) over (partition by trans_id,debit_credit_indicator ) when debit_credit_indicator ='cr' then max(trans_amt) over (partition by trans_id,debit_credit_indicator ) else null end trans_amt , debit_credit_indicator from test_bank union select trans_id , case when debit_credit_indicator ='db' then min(trans_amt) over (partition by trans_id,debit_credit_indicator ) when debit_credit_indicator ='cr' then min(trans_amt) over (partition by trans_id,debit_credit_indicator ) else null end trans_amt , debit_credit_indicator from test_bank ) order by trans_id
Hello
to get the answer, we need to know what is your expected results (showing an example).
I don't know if this is appropriate for your needs:
SELECT trans_id, debit_credit_indicator, MAX (trans_amt) trans_amt, 'MAX' min_max FROM test_bank GROUP BY trans_id, debit_credit_indicator UNION ALL SELECT trans_id, debit_credit_indicator, MIN (trans_amt)trans_amt, 'MIN' min_max FROM test_bank GROUP BY trans_id, debit_credit_indicator ORDER BY trans_id, debit_credit_indicator, min_max DESC; TRANS_ID DEBIT_CREDIT_INDICATOR TRANS_AMT MIN_MAX ---------- ---------------------- ---------- ------- 1 cr 200 MIN 1 cr 1099 MAX 1 db 500 MIN 1 db 500 MAX 2 cr 345 MIN 2 cr 345 MAX 2 db 400 MIN 2 db 600 MAX
Kind regards.
Al -
Hello
I need to do the calculation:
(max (min (C, 2.375), 0) + max (min(Y,2.375), 0)) / 6
If the value of c is less than 2,375 then it must accept the value of C 2,375 else.
on this, I need the operation max.
How can I do this?Looking for probably the LARGEST (de) and LESS () functions.
Remember that you may also (ROUND) your C and Y to 3 decimal places during the comparison.Published by: Slow_moe on September 25, 2008 13:14
Maybe you are looking for
-
Need new optical drive for my Satellite M30-344?
Hello the original optical drive in my laptop no longer works. So I want to change it (CD - RW / DVD-ROM) in a new with DVD/CD-RW.I read, that the optical drive CLS or master/slave adjustment und normally with software, I can change that. Use adjustm
-
Paper not pulling from the correct TRAY
You already have a printer (Officejet) double tray and can't seem to get the correct tray. Here are some tips that may help you resolve this problem. The reason why you have this problem, because the 2nd TRAY is not apart from the printer DRIVERS. So
-
where is the Device Manager on the g-7 1150us?
I have a HP Pavilion g7-1150us, and I don't know where the Device Manager. Can someone please? Thanks, BeeBudd
-
I continue to receive messages from the HP Support Assistant telling me that there is an important update available. So I followed the instructions and finally he tells me he's going to Flash the BIOS. However, it's not very far before it crashes a
-
Whenever I get an email my computer wakes up from his sleep.
My old modem out crapped so my cable provider gave me a new one that is a newer model. The old man had a switch that smokers me to disable the internet connection when not in service. Be able to turn off the modem was useful because it would not tr