久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

案例討論:Oracle兩表連接

瀏覽:132日期:2023-11-21 14:26:29
Oracle的兩表連接怎么實(shí)現(xiàn),原來(lái)是SQL的現(xiàn)在想換成oracle的,SQL的如下: SELECT COUNT(*) AS COUNT, SUM(timelen) AS totlekeeptime, SUM(moneys) AS totletimefee, SUM(realmoneys) AS totlenewfee, areacode.area_name FROM phonedata INNER JOIN areacode ON LEFT(phonedata.ani, LEN(areacode.area_code)) = areacode.area_code WHERE starttime>'2005-12-27 00:00:00' and starttime<'2005-12-27 23:59:59' and endtime is not null and userid like '001136' GROUP BY areacode.area_name order by totlekeeptimeoracle里該怎么辦呢?討論一:SELECT AREACODE.AREA_NAME,COUNT(*) AS COUNT,SUM(TIMELEN) AS TOTLEKEEPTIME,SUM(MONEYS) AS TOTLETIMEFEE,SUM(REALMONEYS) AS TOTLENEWFEE,FROM PHONEDATA INNER JOIN AREACODE ON (LEFT(PHONEDATA.ANI,LEN(AREACODE.AREA_CODE)) = AREACODE.AREA_CODE)WHERE STARTTIME>'2005-12-27 00:00:00'AND STARTTIME<'2005-12-27 23:59:59'AND ENDTIME IS NOT NULLAND USERID LIKE '001136%'GROUP BY AREACODE.AREA_NAMEORDER BY TOTLEKEEPTIME/說(shuō)明:只是不知道你沒(méi)有限定哪個(gè)表的那些字段是不是只有一個(gè)表里面有,假如不是,會(huì)報(bào)錯(cuò)的。點(diǎn)評(píng):有錯(cuò)誤:1.oracle里兩表連接不是用INNER JOIN AREACODE ON 而是用外連接LEFT OUTER JOIN .. ON或內(nèi)連接LEFT in JOIN .. ON2.oracle里沒(méi)有LEFT函數(shù),取字接數(shù)是用length;討論二:SELECT AREACODE.AREA_NAME,COUNT(*) AS COUNT,SUM(TIMELEN) AS TOTLEKEEPTIME,SUM(MONEYS) AS TOTLETIMEFEE,SUM(REALMONEYS) AS TOTLENEWFEE,FROM PHONEDATA ,AREACODEwhere substring(PHONEDATA.ANI,1,length(AREACODE.AREA_CODE)) = AREACODE.AREA_CODEand to_date(STARTTIME,'yyyy-mm-dd hr24:mi:ss')>'2005-12-27 00:00:00'AND to_date(STARTTIME,'yyyy-mm-dd hr24:mi:ss')<'2005-12-27 23:59:59'AND ENDTIME IS NOT NULLAND USERID LIKE '001136%'GROUP BY AREACODE.AREA_NAMEORDER BY TOTLEKEEPTIME點(diǎn)評(píng):兩表連接那錯(cuò)了,但這地方: substring(PHONEDATA.ANI,1,length(AREACODE.AREA_CODE)) = AREACODE.AREA_CODE是對(duì)的;最佳答案:SELECT COUNT(*) AS COUNT, SUM(timelen) AS totlekeeptime, SUM(moneys) AS totletimefee,SUM(realmoneys) AS totlenewfee, areacode.area_nameFROM phonedata ,areacodeWHERE starttime>'2005-12-27 00:00:00' and starttime<'2005-12-27 23:59:59'and endtime is not null and userid like '001136'/*and LEFT(phonedata.ani, length(areacode.area_code)) = areacode.area_code */and substr(phonedata.ani, 1,length(areacode.area_code)) = areacode.area_codeGROUP BY areacode.area_name order by totlekeeptime說(shuō)明:inner join 直接相等就可以了,left換成substr。
主站蜘蛛池模板: 建昌县| 定兴县| 穆棱市| 瑞安市| 嵊州市| 会昌县| 浦县| 崇阳县| 泰安市| 浦东新区| 涟源市| 寿光市| 板桥市| 从江县| 正蓝旗| 岳普湖县| 贵阳市| 德兴市| 北票市| 闽侯县| 沾益县| 贞丰县| 饶阳县| 宝丰县| 同江市| 岱山县| 长寿区| 汽车| 辽源市| 海南省| 喜德县| 定西市| 桂平市| 闸北区| 伊金霍洛旗| 枣阳市| 台州市| 鄯善县| 察雅县| 泗水县| 开江县|