Removing duplicate records by using Oracle’s ROWID

ถ้าคุณมีตารางข้อมูลอยู่ และรู้ว่ามีบางแถวที่มีข้อมูลซ้ำซ้อนกัน ทางไหนเป็นวิธีที่ดีที่จะสามารถหาและกำจัดแถวที่มีข้อมูลซ้ำนี้ออกไปจากตารางของฐานข้อมูล Oracle ?   การหาแถวที่มีข้อมูลซ้ำซ้อน เราสามารถหาข้อมูลแถวที่มีข้อมูลซ้ำซ้อนกันได้โดยใช้คำสั่ง select ดังนี้   select a,b,count(*) from test group by a,b having count(*) > 1; ผลลัพธ์ที่ได้ : A          B   COUNT(*) ———- ———- ———- 1          2        259 2          2          5   จากตัวอย่างในตาราง test นี้เราจะกำหนดว่าให้ค่าในคอลัมภ์ a และ b จะต้องมีค่าไม่ซ้ำ ซึ่งผลลัพธ์ที่ปรากฏคือ มีข้อมูลซ้ำ 258 แถว และ 4 แถว   การกำจัดแถวที่มีข้อมูลซ้ำซ้อน เราสามารถกำจัดแถวที่มีข้อมูลซ้ำซ้อนกันได้โดยการใช้ rowid … Read more

อีกหนึ่งวิธีในการกำจัดข้อมูลที่ซ้ำซ้อนกันในตาราง

ถ้าคุณมีตารางข้อมูลอยู่ และรู้ว่ามีบางแถวที่มีข้อมูลซ้ำซ้อนกัน ทางไหนเป็นวิธีที่ดีที่จะสามารถหาและกำจัดแถวที่มีข้อมูลซ้ำนี้ออกไปจากตารางของฐานข้อมูล Oracle ? อีกวิธีหนึ่งที่เป็นไปได้ในการกำจัดแถวที่ซ้ำซ้อนกันคือการใช้คำสั่ง select distinct และใส่ข้อมูลที่ได้ลงในตารางใหม่   จากที่เราสามารถตรวจสอบหาข้อมูลแถวที่มีข้อมูลซ้ำซ้อนกันได้โดยใช้คำสั่ง select ดังนี้ SQL> select a,b,count(*) from test group by a,b; ผลลัพธ์ที่ได้ A           B COUNT(*) ———- ———- ———- 1           2       259 2           2           … Read more

Oracle Database 12CR1 monitoring with MRTG

OS: Oracle Enterprise Linux  7.2  (CentOS 7.2) วิธีติดตั้ง MRTG สามารถติดตั้งได้โดยสามารถดูคู่มือที่ ติดตั้ง mrtg บน ubuntu อาจไม่เหมือนกันแต่สามารถทำได้ทำนองเดียวกัน กราฟสำหรับ Idle CPU and Load average, CPU Time spent waiting for IO, Traffic Analysis for eth0, TCP Current Establish สามารถใช้ script เดียวกับลิงค์ในข้อ ๒ ได้เลย สร้างแฟ้ม /etc/mrtg/get-memory.sh มีข้อความว่า #!/bin/bash FREE=$(free |grep “Mem:”|awk ‘{print $7}’) SWAP=$(free |grep “Swap:”|awk ‘{print $3}’) TIME=$(uptime) echo … Read more