คำถามติดแท็ก sql-delete

คำสั่ง SQL DELETE ช่วยให้คุณสามารถลบแถวเดียวหรือหลายแถวจากตาราง SQL

15
วิธีการลบโดยใช้ INNER JOIN กับ SQL Server
ฉันต้องการลบใช้INNER JOINในSQL Server 2008 แต่ฉันได้รับข้อผิดพลาดนี้: ข่าวสารเกี่ยวกับ 156, ระดับ 15, สถานะ 1, บรรทัดที่ 15 ไวยากรณ์ไม่ถูกต้องใกล้กับคำหลัก 'INNER' รหัสของฉัน: DELETE FROM WorkRecord2 INNER JOIN Employee ON EmployeeRun=EmployeeNo WHERE Company = '1' AND Date = '2013-05-06'

16
ข้อผิดพลาดของ MySQL 1093 - ไม่สามารถระบุตารางเป้าหมายสำหรับการอัปเดตในส่วนคำสั่งได้
ฉันมีตารางstory_categoryในฐานข้อมูลที่มีรายการที่เสียหาย แบบสอบถามถัดไปส่งคืนรายการที่เสียหาย: SELECT * FROM story_category WHERE category_id NOT IN ( SELECT DISTINCT category.id FROM category INNER JOIN story_category ON category_id=category.id); ฉันพยายามที่จะลบพวกเขาดำเนินการ: DELETE FROM story_category WHERE category_id NOT IN ( SELECT DISTINCT category.id FROM category INNER JOIN story_category ON category_id=category.id); แต่ฉันได้รับข้อผิดพลาดต่อไป: # 1093 - คุณไม่สามารถระบุตารางเป้าหมาย 'story_category' สำหรับการอัปเดตในส่วนคำสั่งได้ ฉันจะเอาชนะสิ่งนี้ได้อย่างไร

21
วิธีลบแถวที่ซ้ำกันใน SQL Server
ฉันจะลบแถวที่ซ้ำกันที่ไม่มีunique row idอยู่ได้อย่างไร โต๊ะของฉันคือ col1 col2 col3 col4 col5 col6 col7 john 1 1 1 1 1 1 john 1 1 1 1 1 1 sally 2 2 2 2 2 2 sally 2 2 2 2 2 2 ฉันต้องการที่จะเหลือต่อไปนี้หลังจากการลบที่ซ้ำกัน: john 1 1 1 1 1 1 sally 2 2 …

5
การลบแถวด้วย MySQL LEFT JOIN
ฉันมีสองตารางหนึ่งตารางสำหรับงานกำหนดเวลาหนึ่งตารางสำหรับอธิบายงาน แต่ละงานสามารถรับสถานะได้และบางสถานะหมายถึงกำหนดเวลางานที่ต้องลบออกจากตารางอื่น ฉันสามารถSELECTหางาน / กำหนดเวลาที่ตรงกับเกณฑ์ของฉันด้วยLEFT JOIN: SELECT * FROM `deadline` LEFT JOIN `job` ON deadline.job_id = job.job_id WHERE `status` = 'szamlazva' OR `status` = 'szamlazhato' OR `status` = 'fizetve' OR `status` = 'szallitva' OR `status` = 'storno' ( statusเป็นของjobตารางไม่ได้deadline) แต่เมื่อฉันต้องการลบแถวเหล่านี้ออกdeadlineMySQL จะพ่นข้อผิดพลาด คำถามของฉันคือ: DELETE FROM `deadline` LEFT JOIN `job` ON deadline.job_id …

3
SQL DELETE ด้วย INNER JOIN
มี 2 ตาราง, spawnlistและและฉันต้องการที่จะลบข้อมูลจาก npc เป็นสิ่งเดียวที่ "เชื่อมต่อ" ตาราง ฉันได้ลองใช้สคริปต์นี้แล้ว แต่ไม่ได้ผลspawnlsitnpc_templateid = n.idTemplate ฉันได้ลองสิ่งนี้แล้ว: DELETE s FROM spawnlist s INNER JOIN npc n ON s.npc_templateid = n.idTemplate WHERE (n.type = "monster");

7
จะลบจากหลายตารางใน MySQL ได้อย่างไร?
ฉันกำลังพยายามลบจากสองสามตารางพร้อมกัน ฉันได้ทำการค้นคว้าและหาข้อมูลมาเล็กน้อย DELETE FROM `pets` p, `pets_activities` pa WHERE p.`order` > :order AND p.`pet_id` = :pet_id AND pa.`id` = p.`pet_id` อย่างไรก็ตามฉันได้รับข้อผิดพลาดนี้ Uncaught Database_Exception [1064]: คุณมีข้อผิดพลาดในไวยากรณ์ SQL ของคุณ ตรวจสอบคู่มือที่สอดคล้องกับเวอร์ชันเซิร์ฟเวอร์ MySQL ของคุณสำหรับไวยากรณ์ที่เหมาะสมที่จะใช้ใกล้ 'p, pets_activitiespa ... ฉันไม่เคยลบตารางไขว้มาก่อนดังนั้นฉันจึงไม่มีประสบการณ์และติดอยู่ในตอนนี้! ผมทำอะไรผิดหรือเปล่า?

6
จะลบแถวบนสุด 1,000 แถวจากตารางโดยใช้ Sql Server 2008 ได้อย่างไร
ฉันมีตารางใน SQL Server ฉันต้องการลบ 1,000 แถวแรกออกจากมัน อย่างไรก็ตามฉันลองแล้ว แต่แทนที่จะลบแถวบนสุด 1,000 แถวมันจะลบแถวทั้งหมดในตาราง นี่คือรหัส: delete from [mytab] select top 1000 a1,a2,a3 from [mytab]

12
จะลบ / สร้างฐานข้อมูลใน Neo4j ได้อย่างไร?
เป็นไปได้หรือไม่ที่จะสร้าง / ลบฐานข้อมูลต่างๆในฐานข้อมูลกราฟNeo4jเหมือนใน MySQL หรืออย่างน้อยวิธีการลบโหนดและความสัมพันธ์ทั้งหมดของกราฟที่มีอยู่เพื่อตั้งค่าใหม่ทั้งหมดสำหรับการทดสอบเช่นการใช้คำสั่งเชลล์ที่คล้ายกับrmrelหรือrm?


16
จะลบรายการที่ซ้ำกันได้อย่างไร?
ฉันต้องเพิ่มข้อ จำกัด เฉพาะให้กับตารางที่มีอยู่ ใช้ได้ดียกเว้นว่าตารางมีแถวเป็นล้านแถวแล้วและหลายแถวละเมิดข้อ จำกัด เฉพาะที่ฉันต้องเพิ่ม วิธีที่เร็วที่สุดในการลบแถวที่กระทำผิดคืออะไร ฉันมีคำสั่ง SQL ซึ่งค้นหารายการที่ซ้ำกันและลบออก แต่ต้องใช้เวลาตลอดไปในการรัน มีวิธีอื่นในการแก้ปัญหานี้หรือไม่? อาจจะสำรองตารางแล้วกู้คืนหลังจากเพิ่มข้อ จำกัด ?

9
MySQL ลบจากแบบสอบถามย่อยเป็นเงื่อนไข
ฉันกำลังพยายามทำแบบสอบถามดังนี้: DELETE FROM term_hierarchy AS th WHERE th.parent = 1015 AND th.tid IN ( SELECT DISTINCT(th1.tid) FROM term_hierarchy AS th1 INNER JOIN term_hierarchy AS th2 ON (th1.tid = th2.tid AND th2.parent != 1015) WHERE th1.parent = 1015 ); อย่างที่คุณบอกได้ฉันต้องการลบความสัมพันธ์ผู้ปกครองกับ 1015 หาก tid เดียวกันมีผู้ปกครองอื่น อย่างไรก็ตามนั่นทำให้ฉันมีข้อผิดพลาดทางไวยากรณ์: You have an error in your …

5
วิธีลบหลายแถวใน SQL โดยที่ id = (x ถึง y)
ฉันพยายามเรียกใช้แบบสอบถาม SQL เพื่อลบแถวที่มีรหัส 163 ถึง 265 ในตาราง ฉันพยายามนี้เพื่อลบจำนวนแถวที่น้อยลง DELETE FROM `table` WHERE id IN (264, 265) แต่เมื่อพูดถึงการลบ 100 แถวในแต่ละครั้งมีข้อความค้นหาใดที่คล้ายกับวิธีการข้างต้นหรือไม่ฉันพยายามใช้แบบสอบถามประเภทนี้ แต่ไม่สามารถดำเนินการได้ DELETE FROM `table` WHERE id IN (SELECT * FROM table WHERE id = ) โปรดบอกแบบสอบถามเพื่อดำเนินการข้างต้น ...
86 sql  sql-delete 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.