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

Structured Query Language (SQL) เป็นภาษาสำหรับการสืบค้นฐานข้อมูล คำถามควรมีตัวอย่างรหัสโครงสร้างตารางข้อมูลตัวอย่างและแท็กสำหรับการใช้งาน DBMS (เช่น MySQL, PostgreSQL, Oracle, MS SQL Server, IBM DB2 และอื่น ๆ ) หากคำถามของคุณเกี่ยวข้องกับ DBMS เฉพาะ (ใช้ส่วนขยาย / คุณลักษณะเฉพาะ) ให้ใช้แท็กของ DBMS นั้นแทน คำตอบของคำถามที่ติดแท็กด้วย SQL ควรใช้ SQL มาตรฐาน ISO / IEC

7
ตัวเลือกสำหรับการจัดเก็บข้อมูลแบบลำดับชั้นในฐานข้อมูลเชิงสัมพันธ์คืออะไร? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน10 เดือนที่ผ่านมา ภาพรวมที่ดี โดยทั่วไปคุณกำลังตัดสินใจระหว่างเวลาอ่านเร็ว (ตัวอย่างเช่นชุดซ้อน) หรือเวลาเขียนเร็ว (รายการ adjacency) โดยปกติแล้วคุณจะพบกับตัวเลือกด้านล่างที่ตรงกับความต้องการของคุณมากที่สุด ต่อไปนี้จะให้การอ่านเชิงลึกบางอย่าง: หนึ่งช่วงเวลาซ้อนกับการเปรียบเทียบรายการ Adjacency : การเปรียบเทียบรายการ Adjacency ที่ดีที่สุด , เส้นทาง Materialized, ชุดซ้อนและช่วงซ้อนที่ฉันพบ แบบจำลองสำหรับข้อมูลลำดับชั้น : สไลด์พร้อมคำอธิบายที่ดีของการแลกเปลี่ยนและการใช้ตัวอย่าง แสดงลำดับชั้นใน MySQL : ภาพรวมที่ดีมากของชุดซ้อนโดยเฉพาะ ข้อมูลลำดับชั้นใน RDBMSs : ชุดลิงก์ที่ครอบคลุมและมีการจัดการที่ดีที่สุดที่ฉันเคยเห็น แต่ไม่ได้อธิบายมากนัก ตัวเลือก คนที่ฉันรู้จักและคุณสมบัติทั่วไป: รายการคำคุณศัพท์ : คอลัมน์: ID, ParentID ใช้งานง่าย โหนดถูกย้ายแทรกและลบ มีราคาแพงในการค้นหาระดับบรรพบุรุษและลูกหลานเส้นทาง หลีกเลี่ยง N + …

16
เลือกแถวแรกในแต่ละกลุ่มจำแนกตามกลุ่ม?
เป็นชื่อแนะนำ, GROUP BYฉันต้องการที่จะเลือกแถวแรกของชุดของแต่ละแถวมีการจัดกลุ่ม โดยเฉพาะถ้าฉันมีpurchasesตารางที่มีลักษณะเช่นนี้: SELECT * FROM purchases; เอาท์พุทของฉัน: id | ลูกค้า | รวม --- + + ---------- ------ 1 | โจ | 5 2 | แซลลี่ | 3 3 | โจ | 2 4 | แซลลี่ | 1 ฉันต้องการค้นหาidการซื้อที่ใหญ่ที่สุด ( total) จากแต่ละcustomerรายการ บางสิ่งเช่นนี้ SELECT FIRST(id), customer, FIRST(total) FROM purchases …

16
ฉันจะทำคำสั่ง UPDATE กับ JOIN ใน SQL Server ได้อย่างไร
ฉันต้องการอัปเดตตารางนี้ในSQL Serverด้วยข้อมูลจากตาราง 'พาเรนต์' ดูด้านล่าง: ตาราง: การขาย id (int) udid (int) assid (int) ตาราง: ud id (int) assid (int) sale.assidud.assidมีค่าที่ถูกต้องเพื่อการปรับปรุง คำถามอะไรที่จะทำเช่นนี้? ฉันกำลังคิดjoinแต่ฉันไม่แน่ใจว่ามันเป็นไปได้

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'


11
ฉันสามารถต่อแถว MySQL หลายแถวไว้ในฟิลด์เดียวได้ไหม
ใช้MySQLฉันสามารถทำสิ่งที่ชอบ: SELECT hobbies FROM peoples_hobbies WHERE person_id = 5; เอาท์พุทของฉัน: shopping fishing coding แต่ฉันต้องการ 1 แถวแทน 1 คอลัมน์: ผลลัพธ์ที่คาดหวัง: shopping, fishing, coding เหตุผลก็คือฉันเลือกค่าหลายค่าจากหลายตารางและหลังจากการรวมทั้งหมดฉันมีแถวมากกว่าที่ฉันต้องการ ฉันมองหาฟังก์ชั่นในMySQL Docและมันดูไม่เหมือนCONCATหรือCONCAT_WSฟังก์ชั่นที่ยอมรับชุดผลลัพธ์ ดังนั้นใครที่นี่รู้วิธีการทำเช่นนี้?
1214 mysql  sql  concat  group-concat 

28
ค้นหาตารางทั้งหมดที่มีคอลัมน์พร้อมชื่อที่ระบุ - MS SQL Server
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ เป็นไปได้หรือไม่ที่จะสืบค้นชื่อตารางที่มีคอลัมน์อยู่ LIKE '%myName%' ?

17
วิธีแสดงตารางในไฟล์ฐานข้อมูล SQLite ที่เปิดด้วย ATTACH
SQL ชนิดใดที่สามารถใช้เพื่อแสดงรายการตารางและแถวภายในตารางเหล่านั้นในไฟล์ฐานข้อมูลSQLite - เมื่อฉันแนบไฟล์ด้วยATTACHคำสั่งบนเครื่องมือบรรทัดคำสั่งSQLite 3 แล้ว
1197 sql  database  sqlite  metadata 

14
วิธีที่ดีที่สุดในการรับข้อมูลประจำตัวของแถวที่แทรก?
วิธีที่ดีที่สุดในการIDENTITYแทรกแถวคืออะไร ฉันรู้เกี่ยวกับ@@IDENTITYและIDENT_CURRENTและSCOPE_IDENTITYแต่ไม่เข้าใจข้อดีข้อเสียของแต่ละข้อ ใครช่วยอธิบายความแตกต่างได้และเมื่อใดควรใช้แต่ละข้อ
1119 sql  sql-server  tsql 


30
กำหนดพารามิเตอร์ SQL IN clause
ฉันจะกำหนดพารามิเตอร์การสืบค้นที่มีส่วนINคำสั่งที่มีอาร์กิวเมนต์จำนวนตัวแปรเช่นนี้ได้อย่างไร SELECT * FROM Tags WHERE Name IN ('ruby','rails','scruffy','rubyonrails') ORDER BY Count DESC ในแบบสอบถามนี้จำนวนอาร์กิวเมนต์อาจอยู่ที่ใดก็ได้ตั้งแต่ 1 ถึง 5 ฉันไม่ต้องการใช้ขั้นตอนการจัดเก็บเฉพาะสำหรับนี้ (หรือ XML) แต่ถ้ามีบางวิธีที่หรูหราโดยเฉพาะกับSQL Server 2008ฉันเปิดให้


17
ฉันจะ จำกัด จำนวนแถวที่ส่งคืนโดยเคียวรี Oracle หลังจากสั่งซื้อได้อย่างไร?
มีวิธีที่จะทำให้OracleแบบสอบถามทำงานเหมือนมีMySQL limitประโยคหรือไม่? ในMySQLฉันสามารถทำสิ่งนี้: select * from sometable order by name limit 20,10 เพื่อรับแถวที่ 21 ถึงแถวที่ 30 (ข้ามแถวแรก 20 ให้อีก 10 แถวถัดไป) แถวจะถูกเลือกหลังแถวorder byดังนั้นจึงเริ่มต้นด้วยชื่อที่ 20 ตามตัวอักษร ในOracleสิ่งเดียวที่คนพูดถึงคือrownumคอลัมน์หลอก แต่มันถูกประเมินมาก่อน order byซึ่งหมายความว่า: select * from sometable where rownum <= 10 order by name จะส่งกลับชุดสุ่มสิบแถวเรียงตามชื่อซึ่งมักจะไม่ใช่สิ่งที่ฉันต้องการ นอกจากนี้ยังไม่อนุญาตให้ระบุการชดเชย

6
ความแตกต่างระหว่างเข้าร่วมและเข้าร่วมภายใน
การเข้าร่วมทั้งสองนี้จะให้ผลลัพธ์แบบเดียวกันกับฉัน: SELECT * FROM table JOIN otherTable ON table.ID = otherTable.FK VS SELECT * FROM table INNER JOIN otherTable ON table.ID = otherTable.FK มีความแตกต่างระหว่างงบในการปฏิบัติงานหรืออื่น ๆ ? มันแตกต่างกันระหว่างการใช้SQL ที่แตกต่างกันหรือไม่?

11
ฉันจะหลีกเลี่ยงคำพูดเดียวใน SQL Server ได้อย่างไร
ฉันกำลังพยายามหาinsertข้อมูลตัวอักษรลงในตารางที่SQL Server9 ข้อความประกอบด้วยเครื่องหมายคำพูดเดี่ยว (') ฉันจะหนีได้อย่างไร ฉันพยายามใช้สองคำพูดเดียว แต่มันทำให้ฉันมีข้อผิดพลาด เช่น. insert into my_table values('hi, my name''s tim.');

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.