 |
เขียน query อย่างไรค่ะ ให้แสดงว่ามี record ที่ซ้ำกันอยู่ |
|
 |
|
|
 |
 |
|
ตอนออกแบบฐานข้อมูลให้มันซ้ำกันได้ด้วยเหรอคับ -*-
SELECT ชื่อ field FROM ชื่อตาราง GROUP BY field ที่มีข้อมูลซ้ำ HAVING COUNT(field ที่มีข้อมูลซ้ำ)>1
|
 |
 |
 |
 |
Date :
2011-01-12 17:39:43 |
By :
teez1232002 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอนออกแบบฐานข้อมูล ข้อมูลไม่ซ้ำกันค่ะ
แต่พอรันออกมาแล้วมีบาง record มันออกมาแบบทวีคูณเลยค่ะ
เลยมาถามทุกๆๆท่านเขียน code อย่างไรให้ดู record ที่ออกมาซ้ำกันได้
ตอนนี้หาทางแก้อยู่เลยค่ะ ว่าข้อมูลมันออกมาซ้ำกันได้อย่างไร
พอทราบไหมค่ะว่ามสาเหตุมาจากอะไรค่ะ
ปล.ขอบคุณทุกๆๆคำตอบนะค่ะ
|
 |
 |
 |
 |
Date :
2011-01-13 07:52:37 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมว่าอันนี้แก้ไขปัญหา ปลายเหตุนะครับ
ผมว่าให้ไปทำการ init ที่เวปเลยดีกว่าครับ ให้ตรวจสอบก่อนทำการ อัฟ ลง base อะครับ
อันนี้ผมว่าแก้ปัญหาได้มากเลยนะครับ
|
 |
 |
 |
 |
Date :
2011-01-13 09:22:02 |
By :
kamuro |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ไปดูตอน submit แล้ว insert ลงไป ดูว่ามันซ้ำกันทุกครั้งรึป่าว ถ้าซ้ำทุกครั้ง คือ code ผิดคับ มันอาจจะวน insert ไป มากกว่า 1 ครั้ง
|
 |
 |
 |
 |
Date :
2011-01-13 10:42:13 |
By :
teez1232002 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
THK^^ ค่ะ
แต่ init นี้คืออะไรเหรอค่ะ
|
 |
 |
 |
 |
Date :
2011-01-13 10:49:32 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ข้อมูลไม่ได้ซ้ำกันทุก record น่ะคะ มีบาง record เท่านั้นค่ะ
โดยจะซ้ำกันที่ record ที่เก้บค่ามากกว่า 1 ค่ะ
เช่น id , name , amount, dep
------------------------------
200 ben 1200 ค่าบริการ
200 ben 1000 ค่าซ่อมแซม
------------------------------
นี้คือ ข้อมูลจริงนะคะ แต่output ที่ได้คือ
id , name , amount
----------------------
200 ben 1200 ค่าบริการ
200 ben 1000 ค่าซ่อมแซม
200 ben 1200 ค่าบริการ
200 ben 1000 ค่าซ่อมแซม
---------------------------
มันออกซ้ำกันอ่ะค่ะ ประมานนี้อ่ะค่ะ
|
 |
 |
 |
 |
Date :
2011-01-13 11:03:40 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอน SELECT ใช่ JOIN กันรึป่าว มีหลายตารางใช่มั้ยคับ JOIN ผิดแล้วแน่เลย
|
 |
 |
 |
 |
Date :
2011-01-13 11:06:07 |
By :
teez1232002 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ใช่ค่ะ join กันเยอะมากอ่ะค่ะ ดูของจริงเลยไหมค่ะ อาจจะงงหน่อยคะ
Code (PHP)
SELECT To_Char(rctpv.gd_gl_date, 'dd-mon-yy') AS "GL DATE",
gcc.segment3 AS "DEPT",
gcc.segment2 AS "ACC CODE",
rctpv.rac_bill_to_customer_name AS "CUSTOMER_NAME",
rctpv.rac_bill_to_customer_num AS "CUSTOMER_NO",
rctpv.trx_number AS "DOCUMENT_NO",
ra_line.extended_amount AS "AMOUNT" ,
ra_tax.extended_amount AS "VAT",
ra_line.description AS "DESCRIPTION"
FROM gl_code_combinations gcc,
ra_cust_trx_line_gl_dist_all rctlgda,
ra_customer_trx_partial_v rctpv,
ra_customer_trx_lines_all ra_line ,
ra_customer_trx_lines_all ra_tax
WHERE rctlgda.code_combination_id = gcc.code_combination_id
AND rctlgda.customer_trx_id = rctpv.customer_trx_id
AND ra_line.customer_trx_id = rctpv.customer_trx_id
AND ra_line.customer_trx_id = ra_tax.customer_trx_id
AND ra_line.line_type = 'LINE'
AND ra_tax.line_type= 'TAX'
AND gcc.segment2 in (421100,421060)
AND ra_tax.LINK_TO_CUST_TRX_LINE_ID = ra_line.CUSTOMER_TRX_LINE_ID
|
 |
 |
 |
 |
Date :
2011-01-13 11:17:56 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
0.0 ศึกษาเรื่อง JOIN ดีกว่าคับ แบบนี้ข้อผิดพลาดมี
JOIN กันทั้ง 5 ตารางเลยดีกว่า เร็วกว่าคับ เปลี่ยน SELECT ใหม่
|
 |
 |
 |
 |
Date :
2011-01-13 11:54:34 |
By :
teez1232002 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ง่ะเปลียน select ใหม่นี้ คือเปลี่ยนอะไรค่ะ ขยายความหน่อยได้ไหมค่ะ ไม่เข้าใจค่ะ
|
 |
 |
 |
 |
Date :
2011-01-13 13:07:25 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
คงหมายถึงเปลี่ยนรูปแบบคำสั่ง SELECT ไปใช้แบบ JOIN น่ะค่ะ
|
 |
 |
 |
 |
Date :
2011-01-13 13:20:59 |
By :
ultrasiam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ไม่เข้านะคะ ขอดูตัวอย่างได้ไหมคะ
|
 |
 |
 |
 |
Date :
2011-01-13 13:38:32 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
หาดูได้ที่ tutorial ค่ะ ตามลิงค์ไปเลย
|
 |
 |
 |
 |
Date :
2011-01-13 13:48:36 |
By :
ultrasiam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
งงค่ะ นี้ก็ join กันอยู่แล้วไม่ใช่เหรอค่ะ แล้วต้องเปลียนที่ select เป็น join นี้ยังไงก็ยังไม่เข้าใขอยู่ดีค่ะ
ขอโทษพอดีมือใหม่
|
 |
 |
 |
 |
Date :
2011-01-13 13:55:28 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
หมายถึง JOIN แบบอื่นน่ะค่ะ OUTER JOIN, RIGHT JOIN, LEFT JOIN อะไรพวกนี้ เลือกใช้ดูตามความเหมาะสม
|
 |
 |
 |
 |
Date :
2011-01-13 14:29:29 |
By :
ultrasiam |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอบคุณที่ชี้แนะน่ะค่ะ
|
 |
 |
 |
 |
Date :
2011-01-14 08:20:20 |
By :
nuttharin |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|