Related
Thank you in advance.
I just need to get a distinct count of these rows.
1539946464002000000 /vcg/_definst_/assets2/2018/07/20/178BFA56-1923-4E27-9F29-3B4DAACABA45/dash.smil/chunk_ctvideo_ridp0va0br3278733_cn192_mpd.m4s
1539946464003000000 /vsg/_definst_/assets2/2018/10/17/85080696-4B3A-4852-B572-B8787918AB45/hls.smil/playlist.m3u8
1539946464004000000 /vcg/_definst_/assets8/2018/03/20/CBA7ED48-5E57-439F-9646-91D8A8009C81/hls.smil/media_b128000_ao_sles_t64U3BhbmlzaA==_260.ts
1539946464005000000 /vsg/_definst_/assets17/2018/10/12/832977ED-AFA4-43AC-B7E9-FFD1CF6F9A45/es.smil/media_b2814000_209.ts
1539946464006000000 /vsg/_definst_/assets5/2017/12/26/D4C053D7-FD4E-4360-B49B-C16F98734F78/eshls.smil/media_b648000_184.ts
1539946464007000000 /vsg/_definst_/assets17/2018/08/10/615EB20B-8C88-4884-99DA-D3DD1084A4A9/es.smil/chunk_ctvideo_ridp0va0br820308_cn342_mpd.m4s
1539946464008000000 /vcg/_definst_/assets1/2018/05/21/FEA21F7A-D0F1-4EDC-89CC-6CDB889913C8/hls.smil/media_b2857000_vo_220.ts
1539946465000000000 /vcg/_definst_/smil:assets15/2018/10/12/DE919355-B070-43C7-BAF6-756E8419F64F/es.smil/media_b1348000_728.ts
1539946465001000000 /vsg/_definst_/assets3/2018/10/18/FFC31EF6-5856-45E5-834D-CCEE5AF0859A/es.smil/chunklist_b980000.m3u8
1539946465002000000 /vcg/_definst_/assets1/2018/05/21/FEA21F7A-D0F1-4EDC-89CC-6CDB889913C8/hls.smil/media_b2857000_vo_222.ts
1539946465003000000 /vsg/_definst_/assets3/2018/10/18/FFC31EF6-5856-45E5-834D-CCEE5AF0859A/es.smil/chunklist_b2050000.m3u8
1539946465004000000 /vsg/_definst_/assets15/2018/10/15/3597C92F-6761-43D6-9477-54DBB0EDB5B3/es.smil/media_b980000_492.ts
1539946465005000000 /vsg/_definst_/assets2/2018/10/17/85080696-4B3A-4852-B572-B8787918AB45/hls.smil/chunklist_b4821000_vo.m3u8
1539946465006000000 /vcg/_definst_/assets3/2018/01/03/FCF70321-9EAC-4FC0-B53C-B90C59446A2B/es.smil/playlist.m3u8
1539946466000000000 /vsg/_definst_/assets6/2015/03/18/9F9569CF-5222-4A51-94F4-AF0F0B1B6ED7/eshls.smil/media_b948000_153.ts
1539946466001000000 /vsg/_definst_/assets6/2018/10/11/91687B02-E10A-40CE-95CE-DEC496BFDFA7/hls.smil/chunklist_b128000_ao_sles_t64U3BhbmlzaA==.m3u8
1539946466002000000 /
1539946466003000000 /vsg/_definst_/assets17/2018/10/04/8D3F6D09-2A17-40B2-82F1-80A18385DEBE/hls.smil/chunklist_b4645000_vo.m3u8
1539946466004000000 /vcg/_definst_/assets6/2014/12/09/5F9923EB-1072-491B-A9DC-3EC2426C1632/hls.smil/media_b128000_ao_sles_t64U3BhbmlzaA==_117.ts
1539946466005000000 /vsg/_definst_/assets3/2018/10/18/B0BF19EA-D2F1-4C2B-B763-F74B27C99C66/es.smil/chunk_ctvideo_ridp0va0br821229_cn348_mpd.m4s
1539946466006000000 /
1539946466007000000 /vsg/_definst_/assets2/2018/10/17/85080696-4B3A-4852-B572-B8787918AB45/hls.smil/playlist.m3u8
1539946467000000000 /vcg/_definst_/assets6/2018/05/03/5822D814-F07C-4869-A531-AE87D29D2EAA/dash.smil/chunk_ctaudio_ridp0aa0br128000_cn148_mpd.m4s
1539946467001000000 /vsg/_definst_/assets2/2018/10/17/85080696-4B3A-4852-B572-B8787918AB45/hls.smil/chunklist_b3214000_vo.m3u8
1539946467002000000 /vcg/_definst_/assets12/2016/06/03/E52B7D3F-14F1-41DC-B04C-5A1178942651/hls.smil/media_b128000_ao_slen_t64RW5nbGlzaA==_22.ts
1539946468000000000 /vcg/_definst_/assets8/2018/09/04/517B3BE5-EA61-4F9D-86B2-0C1B705528B7/hls.smil/media_b5605000_vo_95.ts
1539946468001000000 /vcg/_definst_/smil:assets11/2018/10/06/C2C8ABE8-BBBB-41EA-927B-8212B26CC648/es.smil/media_b2225000_68.ts
1539946468002000000 /vcg/_definst_/assets5/2015/09/24/9D8EAE52-5502-4E92-B528-67A929726D6B/hls.smil/media_b5506000_vo_47.ts
1539946468003000000 /vcg/_definst_/assets17/2017/03/02/DE2FF16C-F1FB-433F-9EDE-C7C6F5A6D20A/es.smil/playlist.m3u8
1539946468004000000 /vsg/_definst_/assets6/2018/10/11/91687B02-E10A-40CE-95CE-DEC496BFDFA7/hls.smil/chunklist_b850000_vo.m3u8
1539946469000000000 /vsg/_definst_/assets8/2014/12/16/9BA3C6D1-0D93-423D-A5BA-9B94BAA147D4/eshls.smil/media_b1973000_351.ts
1539946469001000000 /vcg/_definst_/assets16/2017/02/15/73D35D9F-42A7-49EB-BAD6-A991E6279A79/es.smil/playlist.m3u8
1539946469002000000 /vcg/_definst_/assets3/2018/05/07/7E953A2A-B85A-431A-B0F3-3696732743D8/hls.smil/media_b1556000_vo_150.ts
1539946469003000000 /vcg/_definst_/assets16/2018/07/19/C44A6921-ADC9-4CF6-9582-0E5EF889FE7C/hls.smil/media_b600000_vo_77.ts
1539946469004000000 /vsg/_definst_/assets13/2016/10/02/74EFD7EA-F234-4C27-AFDF-64E632853073/es.smil/media_b1348000_5.ts
1539946469005000000 /vsg/_definst_/assets11/2015/12/21/CE981D0A-89CB-4AEC-A84D-6E69C51C30B2/es.smil/media_b2044000_355.ts
1539946469006000000 /vsg/_definst_/assets11/2018/10/15/76CD14E4-468A-4338-8CF1-76000D04ED9D/hls.smil/playlist.m3u8
1539946469007000000 /vcg/_definst_/assets14/2016/11/24/B1477367-356E-45F2-82A3-7596E2A360A2/eshls.smil/media_b1973000_287.ts
1539946469008000000 /vsg/_definst_/assets2/2018/09/17/DBCD85B7-CB35-4BFB-B21D-F8DB344746F5/dash.smil/chunk_ctvideo_ridp0va0br2793790_cn9_mpd.m4s
1539946469009000000 /vsg/_definst_/assets11/2018/10/15/76CD14E4-468A-4338-8CF1-76000D04ED9D/hls.smil/chunklist_b2241000_vo.m3u8
and that's impossible... In Oracle, it is so simple that this:
select distinct value, count(*) from table1 group by value
Any help would be so appreciated
Regards.
SELECT COUNT(DISTINCT( <field_key> ))
https://docs.influxdata.com/influxdb/v1.6/query_language/functions/#distinct
I'm trying to add 4 series using bosun expressions. They are from 1,2,3,4 weeks ago. I shifted them using shift() to have current time. But I can't add them since they have the shift=1w etc tags. How can I add these series together?
Thank you
edit: here's the query for 2 weeks
$period = d("1w")
$duration = d("30m")
$week1end = tod(1 * $period )
$week1start = tod(1 * $period + $duration )
$week2end = tod(2 * $period )
$week2start = tod(2 * $period + $duration )
$q1 = q("avg:1m-avg:os.cpu{host=myhost}", $week1start, $week1end)
$q2 = q("avg:1m-avg:os.cpu{host=myhost}", $week2start, $week2end)
$shiftedq1 = shift($q1, "1w")
$shiftedq2 = shift($q2, "2w")
$shiftedq1+ $shiftedq2
edit: here's what Bosun said
The problem is similar to: How do I add the series present in the output of an over query:
over("avg:1m-avg:os.cpu{host=myhost}", "30m", "1w", 2)
There is a new function called addtags that is pending documentation (see https://raw.githubusercontent.com/bosun-monitor/bosun/master/docs/expressions.md for draft) which seems to work when combined with rename. Changing the last line to:
$shiftedq1+addtags(rename($shiftedq2,"shift=shiftq2"),"shift=1w")
should generate a single result group like { host=hostname, shift=1w, shiftq2=2w }. If you add additional queries for q3 and q4 you probably need to rename the shift tag for those to unique values like shiftq3 and shiftq4.
If you were using a numbersets instead of seriessets, then the Transpose function would let you "Drop" the unwanted tags. This is useful when generating alerts, since crit and warn need a single number value not a series set:
$average_per_q = avg(merge($shiftedq1,$shiftedq2))
$sum_over_all = sum(t($average_per_q,"host"))
Result: { host=hostname } 7.008055555555557
Side note you probably want to use a counter for os.cpu instead of a gauge. Example: $q1 = q("avg:1m-avg:rate{counter,,1}:os.cpu{. Without that rate section you are using the raw counter values instead of the gauge value.
I have data set in the following format:
100000853384|RETAIL|OTHER|4.625|280000|360|02/2012|04/2012|31|31|1|23|801|NO|CASH-OUT REFINANCE|SF|1|INVESTOR|CA|945||FRM
100003735682|RETAIL|SUNTRUST MORTGAGE INC.|3.99|466000|360|01/2012|03/2012|80|80|2|30|788|NO|PURCHASE|SF|1|PRINCIPAL|MD|208||FRM
100006367485|CORRESPONDENT|PHH MORTGAGE CORPORATION|4|229000|360|02/2012|04/2012|67|67|2|36|794|NO|NO CASH-OUT REFINANCE|SF|1|PRINCIPAL|CA|959||FRM
4th record is the ORIGINAL_INTEREST_RATE.
Now My Question is
What is the interest rate for which most number of people have taken a loan.
I write following codes
LOAD DATA SET
loanAqiData = LOAD 'hdfs://masterNode:8020/home/hadoop/hadoop_data/LOAN_Acquisition_DATA/Acquisition_2012Q1.txt'
USING PigStorage('|')
AS
(
LOAN_IDENTIFIER:chararray
, CHANNEL:chararray
, SELLER_NAME:chararray
, ORIGINAL_INTEREST_RATE:float
, ORIGINAL_UNPAID_PRINCIPAL_BALANCE :float
, ORIGINAL_LOAN_TERM :float
, ORIGINATION_DATE:chararray
, FIRST_PAYMENT_DATE:chararray
, ORIGINAL_LOAN_TO_VALUE:float
, ORIGINAL_COMBINED_LOAN_TO_VALUE :float
, NUMBER_OF_BORROWERS:float
, DEBT_TO_INCOME_RATIO:float
, CREDIT_SCORE:float
, FIRST_TIME_HOME_BUYER_INDICATOR:chararray
, LOAN_PURPOSE:chararray
, PROPERTY_TYPE:chararray
, NUMBER_OF_UNITS:chararray
, OCCUPANCY_STATUS:chararray
, PROPERTY_STATE:chararray
, ZIP:chararray
, MORTGAGE_INSURANCE_PERCENTAGE:float
, PRODUCT_TYPE:chararray
);
//- Group By Interest Rate
grouped_by_interest_rate = group loanAqiData by ORIGINAL_INTEREST_RATE;
No of Counts for individual Interest Rate
count_for_specific_interest = FOREACH grouped_by_interest_rate GENERATE group as INTEREST_RATE, COUNT(loanAqiData) as NO_OF_PEOPLE;
Dump
dump count_for_specific_interest
Output
(3.625,1)
(3.75,2)
(3.875,26)
(3.99,8)
(4.0,21)
(4.1,1)
(4.125,15)
(4.25,16)
(4.375,15)
(4.376,26)
(4.5,10)
(4.625,3)
But I want to get
(3.875,26) and (4.376,26)
How Can I get ?
Also If I want to get the Loan Interest for which minimum No of people has taken Loan ..
I'd suggest you use the MAX() function (http://pig.apache.org/docs/r0.11.0/func.html#max) to determine the highest number of people and then filter by this number.
Here is an example of code that should work (not tested) :
FOREACH count_for_specific_interest {
max_value= MAX($1.NO_OF_PEOPLE);
GENERATE INTEREST_RATE, NO_OF_PEOPLE, max_value;
}
RESULT = FILTER count_for_specific_interest BY NO_OF_PEOPLE==max_value;
For the min you would be able to use exactly the same script replacing MAX() by MIN()
Finally this is resolved.
let me write down the steps
1) Load
2) Group by Interest
grp = group loanAqiData by ORIGINAL_INTEREST_RATE;
3) Count No of people against each Interest
cntForEachGrp = FOREACH grp GENERATE group as
INTEREST_RATE, COUNT(loanAqiData) as NO_OF_PEOPLE;
Output
(3.625,1) (3.75,2) (3.875,26) (3.99,8) (4.0,21) (4.1,1) (4.125,15) (4.25,16) (4.375,15) (4.376,26) (4.5,10) (4.625,3)
4) Group them all to put in the same BAG
grpALL = GROUP cntForEachGrp ALL;
(all,{(3.625,1),(3.75,2),(3.875,26),(3.99,8),(4.0,21),(4.1,1),(4.125,15),(4.25,16),(4.375,15),(4.376,1),(4.5,10),(4.625,3),(4.75,5),(4.875,4),(5.0,2),(5.25,1)})
5) Calculate Max No of people from the BAG
maxVal = FOREACH grpALL {
max_value= MAX(cntForEachGrp.NO_OF_PEOPLE);
GENERATE cntForEachGrp.INTEREST_RATE, cntForEachGrp.NO_OF_PEOPLE, max_value as
max_no;
}
grunt> describe maxVal;
maxVal: {{(INTEREST_RATE: float)},{(NO_OF_PEOPLE: long)},max_no: long}
dump maxVal;
({(3.625),(3.75),(3.875),(3.99),(4.0),(4.1),(4.125),(4.25),(4.375),(4.376),(4.5),(4.625),(4.75),(4.875),(5.0),(5.25)},{(1),(2),(26),(8),(21),(1),(15),(16),(15),(1),(10),(3),(5),(4),(2),(1)},26)
6)Filter out Loan interest having Max no of people
RESULT=FILTER cntForEachGrp BY NO_OF_PEOPLE == maxVal.max_no ;
After dump we get interest Rate -3.875 has max no of people 26.
Why we have to do
grpALL = GROUP cntForEachGrp ALL;
and
what is the inner meaning of the nested foreach in (5)
I have a materialized view that I created as such:
DROP MATERIALIZED VIEW DMSN.SFMV_DS3R_FH_1XRTT_BTS_LVL;
CREATE MATERIALIZED VIEW DMSN.SFMV_DS3R_FH_1XRTT_BTS_LVL (D_DTM_DAY,MRKT_NM,BSC_NM,CLUSTER_NM,CSCD_NM,BTS_ID,REGION_NM,V_ATT_CNT,V_MBL_ORG_CNT,V_MBL_TER_CNT,V_SILENT_RETRY_CNT,V_CUST_BLK_CNT,V_AXS_F_CNT,V_CE_BLK_CNT,V_WCD_BLK_CNT,V_T1_BHL_BLK_CNT,V_PWR_BLK_CNT,V_NON_BTS_EQ_BLK_CNT,V_SFUL_CALL_CNT,V_DRP_CALL_CNT,D_ATT_CNT,D_MBL_ORG_CNT,D_MBL_TER_CNT,D_SILENT_RETRY_CNT,D_CUST_BLK_CNT,D_AXS_F_CNT,D_CE_BLK_CNT,D_WCD_BLK_CNT,D_T1_BHL_BLK_CNT,D_PWR_BLK_CNT,D_NON_BTS_EQ_BLK_CNT,D_SFUL_CALL_CNT,D_DRP_CALL_CNT,V_PRIM_CALL_ERL,V_MOU_TMS,D_PRIM_CALL_ERL,SMS_ATT_CNT,SMS_SXS_CNT,V_HHI_ATT_CNT,V_HHI_BAD_FRM_CNT,V_HHI_CALL_SETUP_SXS_CNT,D_HHI_ATT_CNT,D_HHI_BAD_FRM_CNT,D_HHI_CALL_SETUP_SXS_CNT,PGN_CH_MSG_SZ,AVLBL_PGN_CH_CNT,AVLBL_AXS_CH_CNT,AXS_CH_MSG_SZ,V_IVHHO_ATT_CNT,V_IVHHO_SXS_CNT,D_IVHHO_ATT_CNT,D_IVHHO_SXS_CNT,IBHO_ATT_CNT,IBHO_SXS_CNT,IFHHO_ATT_CNT,IFHHO_SXS_CNT,SHO_ATT_CNT,SHO_SXS_CNT,SRHO_ATT_CNT,SRHO_SXS_CNT,MAX_LOD_SPD,GPM_SDB_DAB_CAL,IBHO_DOWN_ATT_CNT,IBHO_UP_ATT_CNT,IBHO_UP_SUC_CNT,IBHO_DOWN_SUC_CNT,PGN_CH_MAX,PGN_CH_AVG,AXS_CH_AVG,AXS_CH_MAX,PGN_CH_OPCY_NEW,PGN_CH_OPCY_NEW_MAX)
TABLESPACE DMD_SN_01
PCTUSED 0
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOCACHE
LOGGING
BUILD IMMEDIATE
REFRESH FORCE ON DEMAND
WITH PRIMARY KEY
AS
/* Formatted on 10/1/2013 9:06:16 PM (QP5 v5.215.12089.38647) */
SELECT DDTMDAY AS D_DTM_DAY,
MRKTNM AS MRKT_NM,
BSMNM AS BSC_NM,
CLNM AS CLUSTER_NM,
CSCDNM AS CSCD_NM,
BTSID AS BTS_ID,
REGIONNM AS REGION_NM,
SUM (VATTCNT) AS V_ATT_CNT,
SUM (VMBLORGCNT) AS V_MBL_ORG_CNT,
SUM (VMBLTERCNT) AS V_MBL_TER_CNT,
SUM (VSILENTRETRYCNT) AS V_SILENT_RETRY_CNT,
SUM (VCUSTBLKCNT) AS V_CUST_BLK_CNT,
SUM (VAXSFCNT) AS V_AXS_F_CNT,
SUM (VCEBLKCNT) AS V_CE_BLK_CNT,
SUM (VWCDBLKCNT) AS V_WCD_BLK_CNT,
SUM (VT1BHLBLKCNT) AS V_T1_BHL_BLK_CNT,
SUM (VPWRBLKCNT) AS V_PWR_BLK_CNT,
SUM (VNONBTSEQBLKCNT) AS V_NON_BTS_EQ_BLK_CNT,
SUM (VSFULCALLCNT) AS V_SFUL_CALL_CNT,
SUM (VDRPCALLCNT) AS V_DRP_CALL_CNT,
SUM (DATTCNT) AS D_ATT_CNT,
SUM (DMBLORGCNT) AS D_MBL_ORG_CNT,
SUM (DMBLTERCNT) AS D_MBL_TER_CNT,
SUM (DSILENTRETRYCNT) AS D_SILENT_RETRY_CNT,
SUM (DCUSTBLKCNT) AS D_CUST_BLK_CNT,
SUM (DAXSFCNT) AS D_AXS_F_CNT,
SUM (DCEBLKCNT) AS D_CE_BLK_CNT,
SUM (DWCDBLKCNT) AS D_WCD_BLK_CNT,
SUM (DT1BHLBLKCNT) AS D_T1_BHL_BLK_CNT,
SUM (DPWRBLKCNT) AS D_PWR_BLK_CNT,
SUM (DNONBTSEQBLKCNT) AS D_NON_BTS_EQ_BLK_CNT,
SUM (DSFULCALLCNT) AS D_SFUL_CALL_CNT,
SUM (DDRPCALLCNT) AS D_DRP_CALL_CNT,
SUM (VPRIMCALLERL) AS V_PRIM_CALL_ERL,
SUM (VMOUTMS) AS V_MOU_TMS,
SUM (DPRIMCALLERL) AS D_PRIM_CALL_ERL,
SUM (SMSATTCNT) AS SMS_ATT_CNT,
SUM (SMSSXSCNT) AS SMS_SXS_CNT,
SUM (VHHIATTCNT) AS V_HHI_ATT_CNT,
SUM (VHHIBADFRMCNT) AS V_HHI_BAD_FRM_CNT,
SUM (VHHICALLSETUPSXSCNT) AS V_HHI_CALL_SETUP_SXS_CNT,
SUM (DHHIATTCNT) AS D_HHI_ATT_CNT,
SUM (DHHIBADFRMCNT) AS D_HHI_BAD_FRM_CNT,
SUM (DHHICALLSETUPSXSCNT) AS D_HHI_CALL_SETUP_SXS_CNT,
SUM (PGNCHMSGSZ) AS PGN_CH_MSG_SZ,
SUM (AXSCHMSGSZ) AS AVLBL_PGN_CH_CNT,
SUM (VIVHHOATTCNT) AS AVLBL_AXS_CH_CNT,
SUM (VIVHHOSXSCNT) AS AXS_CH_MSG_SZ,
SUM (DIVHHOATTCNT) AS V_IVHHO_ATT_CNT,
SUM (DIVHHOSXSCNT) AS V_IVHHO_SXS_CNT,
SUM (IBHOATTCNT) AS D_IVHHO_ATT_CNT,
SUM (IBHOSXSCNT) AS D_IVHHO_SXS_CNT,
SUM (IFHHOATTCNT) AS IBHO_ATT_CNT,
SUM (IFHHOSXSCNT) AS IBHO_SXS_CNT,
SUM (SHOATTCNT) AS IFHHO_ATT_CNT,
SUM (SHOSXSCNT) AS IFHHO_SXS_CNT,
SUM (SRHOATTCNT) AS SHO_ATT_CNT,
SUM (SRHOSXSCNT) AS SHO_SXS_CNT,
MAX (AVLBLPGNCHCNT) AS SRHO_ATT_CNT,
MAX (AVLBLAXSCHCNT) AS SRHO_SXS_CNT,
SUM (MAXLODSPD) AS MAX_LOD_SPD,
SUM (GPMSDBDABCAL) AS GPM_SDB_DAB_CAL,
SUM (IBHODOWNATTCNT) AS IBHO_DOWN_ATT_CNT,
SUM (IBHOUPATTCNT) AS IBHO_UP_ATT_CNT,
SUM (IBHOUPSUCCNT) AS IBHO_UP_SUC_CNT,
SUM (IBHODOWNSUCCNT) AS IBHO_DOWN_SUC_CNT,
MAX (PGNCHMAX) AS PGN_CH_MAX,
AVG (PGNCHAVG) AS PGN_CH_AVG,
AVG (AXSCHAVG) AS AXS_CH_AVG,
MAX (AXSCHMAX) AS AXS_CH_MAX,
AVG (PGNCHOPCYNEW) AS PGN_CH_OPCY_NEW,
MAX (PGNCHOPCYNEWMAX) AS PGN_CH_OPCY_NEW_MAX
FROM (SELECT TRUNC (D1."D_DTM", 'fmdd') AS "DDTMDAY",
D2."MRKT_NM" AS "MRKTNM",
D3."BSC_NM" AS "BSMNM",
D3."BSC_NM" AS "BSCNM",
D2."CLUSTER_NM" AS "CLNM",
D1."CSCD_NM" AS "CSCDNM",
D1."BTS_ID" AS "BTSID",
D1."V_ATT_CNT" AS "VATTCNT",
D1."V_MBL_ORG_CNT" AS "VMBLORGCNT",
D1."V_MBL_TER_CNT" AS "VMBLTERCNT",
D1."V_SILENT_RETRY_CNT" AS "VSILENTRETRYCNT",
D1."V_CUST_BLK_CNT" AS "VCUSTBLKCNT",
D1."V_AXS_F_CNT" AS "VAXSFCNT",
D1."V_CE_BLK_CNT" AS "VCEBLKCNT",
D1."V_WCD_BLK_CNT" AS "VWCDBLKCNT",
D1."V_T1_BHL_BLK_CNT" AS "VT1BHLBLKCNT",
D1."V_PWR_BLK_CNT" AS "VPWRBLKCNT",
D1."V_NON_BTS_EQ_BLK_CNT" AS "VNONBTSEQBLKCNT",
D1."V_SFUL_CALL_CNT" AS "VSFULCALLCNT",
D1."V_DRP_CALL_CNT" AS "VDRPCALLCNT",
D1."D_ATT_CNT" AS "DATTCNT",
D1."D_MBL_ORG_CNT" AS "DMBLORGCNT",
D1."D_MBL_TER_CNT" AS "DMBLTERCNT",
D1."D_SILENT_RETRY_CNT" AS "DSILENTRETRYCNT",
D1."D_CUST_BLK_CNT" AS "DCUSTBLKCNT",
D1."D_AXS_F_CNT" AS "DAXSFCNT",
D1."D_CE_BLK_CNT" AS "DCEBLKCNT",
D1."D_WCD_BLK_CNT" AS "DWCDBLKCNT",
D1."D_T1_BHL_BLK_CNT" AS "DT1BHLBLKCNT",
D1."D_PWR_BLK_CNT" AS "DPWRBLKCNT",
D1."D_NON_BTS_EQ_BLK_CNT" AS "DNONBTSEQBLKCNT",
D1."D_SFUL_CALL_CNT" AS "DSFULCALLCNT",
D1."D_DRP_CALL_CNT" AS "DDRPCALLCNT",
D1."V_PRIM_CALL_ERL" AS "VPRIMCALLERL",
D1."V_MOU_TMS" AS "VMOUTMS",
D1."D_PRIM_CALL_ERL" AS "DPRIMCALLERL",
D1."SMS_ATT_CNT" AS "SMSATTCNT",
D1."SMS_SXS_CNT" AS "SMSSXSCNT",
D1."V_HHI_ATT_CNT" AS "VHHIATTCNT",
D1."V_HHI_BAD_FRM_CNT" AS "VHHIBADFRMCNT",
D1."V_HHI_CALL_SETUP_SXS_CNT" AS "VHHICALLSETUPSXSCNT",
D1."D_HHI_ATT_CNT" AS "DHHIATTCNT",
D1."D_HHI_BAD_FRM_CNT" AS "DHHIBADFRMCNT",
D1."D_HHI_CALL_SETUP_SXS_CNT" AS "DHHICALLSETUPSXSCNT",
D1."PGN_CH_MSG_SZ" AS "PGNCHMSGSZ",
D1."AVLBL_PGN_CH_CNT" AS "AVLBLPGNCHCNT",
D1."AVLBL_AXS_CH_CNT" AS "AVLBLAXSCHCNT",
D1."AXS_CH_MSG_SZ" AS "AXSCHMSGSZ",
D1."V_IVHHO_ATT_CNT" AS "VIVHHOATTCNT",
D1."V_IVHHO_SXS_CNT" AS "VIVHHOSXSCNT",
D1."D_IVHHO_ATT_CNT" AS "DIVHHOATTCNT",
D1."D_IVHHO_SXS_CNT" AS "DIVHHOSXSCNT",
D1."IBHO_ATT_CNT" AS "IBHOATTCNT",
D1."IBHO_SXS_CNT" AS "IBHOSXSCNT",
D1."IFHHO_ATT_CNT" AS "IFHHOATTCNT",
D1."IFHHO_SXS_CNT" AS "IFHHOSXSCNT",
D1."SHO_ATT_CNT" AS "SHOATTCNT",
D1."SHO_SXS_CNT" AS "SHOSXSCNT",
D1."SRHO_ATT_CNT" AS "SRHOATTCNT",
D1."SRHO_SXS_CNT" AS "SRHOSXSCNT",
D1."MAX_LOD_SPD" AS "MAXLODSPD",
D1."GPM_SDB_DAB_CAL" AS "GPMSDBDABCAL",
D1."IBHO_DOWN_ATT_CNT" AS "IBHODOWNATTCNT",
D1."IBHO_UP_ATT_CNT" AS "IBHOUPATTCNT",
D1."IBHO_UP_SUC_CNT" AS "IBHOUPSUCCNT",
D1."IBHO_DOWN_SUC_CNT" AS "IBHODOWNSUCCNT",
D1."PGN_CH_MAX" AS "PGNCHMAX",
D1."PGN_CH_AVG" AS "PGNCHAVG",
D1."AXS_CH_AVG" AS "AXSCHAVG",
D1."AXS_CH_MAX" AS "AXSCHMAX",
D1."PGN_CH_OPCY_NEW" AS "PGNCHOPCYNEW",
D1."PGN_CH_OPCY_NEW_MAX" AS "PGNCHOPCYNEWMAX",
D2."MRKT_NM" AS "MRKTNM2",
D2."REGION_NM" AS "REGIONNM"
FROM "DMSN"."DS3R_FH_1XRTT_BTS_LVL_KPI" D1
LEFT OUTER JOIN "DMSN"."SITES_GEO_HIERARCHY" D2
ON D1."BTS_ID" = D2."BTS_ID"
AND D1."CSCD_NM" = D2."CSCD_NM"
LEFT OUTER JOIN "DMSN"."SITES_SYS_HIERARCHY" D3
ON D1."BTS_ID" = D3."BTS_ID"
AND D1."CSCD_NM" = D3."CSCD_NM"
WHERE D1."D_DTM" >= TRUNC (SYSDATE, 'dd') - 91) T
GROUP BY DDTMDAY,
MRKTNM,
BSMNM,
CLNM,
CSCDNM,
BTSID,
REGIONNM;
COMMENT ON MATERIALIZED VIEW DMSN.SFMV_DS3R_FH_1XRTT_BTS_LVL IS 'snapshot table for snapshot DMSN.SFMV_DS3R_FH_1XRTT_BTS_LVL';
CREATE INDEX DMSN.IDX1_SFMV_FH_1XRTT_BTS_LVL ON DMSN.SFMV_DS3R_FH_1XRTT_BTS_LVL
(D_DTM_DAY, CSCD_NM, BTS_ID)
LOGGING
TABLESPACE DMD_SN_01
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
);
but when I do a simple select * on that in toad, the dates are showing up blanks. In toad when I double click any of the date field in the column, I get a value back. I'm not sure what is going on here but the application isn't even able to query the date column for some reason.
when I run select * in sqlplus, it also shows up blank....
SQL> SELECT ROWNUM, T1.D_DTM_DAY FROM SFMV_DS3R_FH_1XRTT_BTS_LVL T1 WHERE ROWNUM < 6;
ROWNUM D_DTM_DAY
1
2
3
4
5
Any ideas on why this is happening?
This code:
TRUNC(D1."D_DTM", 'fmdd')
... is possibly intended to be:
TRUNC(D1."D_DTM")
... or:
to_number(to_char(D1."D_DTM", 'fmdd'))
This question already has answers here:
Closed 11 years ago.
Possible Duplicate:
Slow Performance of Sql Query
Hi,
I have asked the performance of query and i tried to simplyfy it.but still it not works.I am adding my query below.Please can you simplify it more effectively
select
r.parent_itemid f_id,
parent_item.name f_name,
parent_item.typeid f_typeid,
parent_item.ownerid f_ownerid,
parent_item.created f_created,
parent_item.modifiedby f_modifiedby,
parent_item.modified f_modified,
pt.name f_tname,
child_item.id i_id,
t.name i_tname,
child_item.typeid i_typeid,
child_item.name i_name,
child_item.ownerid i_ownerid,
child_item.created i_created,
child_item.modifiedby i_modifiedby,
child_item.modified i_modified,
r.ordinal i_ordinal
from
item child_item,
type t,
relation r,
item parent_item,
type pt
where
r.child_itemid = child_item.id and
t.id=child_item.typeid and
parent_item.id = r.parent_itemid and
pt.id = parent_item.typeid
and parent_item.id in (
select
itemid
from
permission
where
itemid=parent_item.id and
(holder_itemid in (10,100) and level > 0) )
order by
r.parent_itemid,
r.relation_typeid,
r.ordinal
Thanks you
regards
jennie
You don't need the correlated subquery on the permissions. Any other problems need to be fixed by checking the indexes indexes on the join fields (like item.child_itemid ) & filter fields (like permission.holder_itemid) will help the performance of your query
select
r.parent_itemid f_id,
parent_item.name f_name,
parent_item.typeid f_typeid,
parent_item.ownerid f_ownerid,
parent_item.created f_created,
parent_item.modifiedby f_modifiedby,
parent_item.modified f_modified,
pt.name f_tname,
child_item.id i_id,
t.name i_tname,
child_item.typeid i_typeid,
child_item.name i_name,
child_item.ownerid i_ownerid,
child_item.created i_created,
child_item.modifiedby i_modifiedby,
child_item.modified i_modified,
r.ordinal i_ordinal
from
item child_item,
type t,
relation r,
item parent_item,
type pt,
permission p
where
r.child_itemid = child_item.id
and t.id=child_item.typeid
and parent_item.id = r.parent_itemid
and pt.id = parent_item.typeid
and parent_item.id = p.itemid
and p.holder_itemid in (10, 100)
and p.level > 0
order by
r.parent_itemid,
r.relation_typeid,
r.ordinal
Try removing the subquery, something like:
select
r.parent_itemid f_id,
parent_item.name f_name,
parent_item.typeid f_typeid,
parent_item.ownerid f_ownerid,
parent_item.created f_created,
parent_item.modifiedby f_modifiedby,
parent_item.modified f_modified,
pt.name f_tname,
child_item.id i_id,
t.name i_tname,
child_item.typeid i_typeid,
child_item.name i_name,
child_item.ownerid i_ownerid,
child_item.created i_created,
child_item.modifiedby i_modifiedby,
child_item.modified i_modified,
r.ordinal i_ordinal
from
item child_item,
type t,
relation r,
item parent_item,
type pt,
permission perm /* <<< added this line <<< */
where
r.child_itemid = child_item.id and
t.id=child_item.typeid and
parent_item.id = r.parent_itemid and
pt.id = parent_item.typeid
and parent_item.id = perm.itemid /* <<< modified this line <<< */
and perm.itemid = parent_item.id /* <<< copied these 2 lines from the subquery <<< */
and (perm.holder_itemid in (10,100) and perm.level > 0) ) /* <<< */
order by
r.parent_itemid,
r.relation_typeid,
r.ordinal
Give it a try, and see if it works and makes any difference.