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

JOIN เป็นการดำเนินการทั่วไปในพีชคณิตเชิงสัมพันธ์สำหรับการดำเนินการรวมกันในความสัมพันธ์สองหรือมากกว่าในระบบฐานข้อมูลเชิงสัมพันธ์ เข้าร่วมยังเป็นคำหลักของภาษา SQL สำหรับการดำเนินการนี้

19
ไวยากรณ์สำหรับการรวมภายในใน LINQ กับ SQL คืออะไร
ฉันกำลังเขียนคำสั่ง LINQ ไปยัง SQL และฉันอยู่หลังไวยากรณ์มาตรฐานสำหรับการเข้าร่วมภายในปกติด้วย ONประโยคใน C # คุณแสดงสิ่งต่อไปนี้ใน LINQ เป็น SQL ได้อย่างไร: select DealerContact.* from Dealer inner join DealerContact on Dealer.DealerID = DealerContact.DealerID
443 c#  .net  sql  linq-to-sql  join 

12
Explicit vs implicit SQL joins
มีความแตกต่างของประสิทธิภาพในการรวมภายในอย่างชัดเจนกับนัยหรือไม่? ตัวอย่างเช่น: SELECT * FROM table a INNER JOIN table b ON a.id = b.id; เมื่อเทียบกับ SELECT a.*, b.* FROM table a, table b WHERE a.id = b.id;
399 sql  join 

2
Pandas การผสาน 101
วิธีดำเนินการ ( LEFT| RIGHT| FULL) ( INNER| OUTER) เข้าร่วมกับหมีแพนด้า? ฉันจะเพิ่ม NaNs สำหรับแถวที่หายไปหลังจากผสานได้อย่างไร ฉันจะกำจัด NaNs ได้อย่างไรหลังจากรวมกัน ฉันสามารถรวมกับดัชนีได้หรือไม่ ข้ามเข้าร่วมกับหมีแพนด้าไหม ฉันจะรวม DataFrames หลาย ๆ ตัวได้อย่างไร merge? join? concat? update? Who? อะไร? ทำไม?! ... และอื่น ๆ. ฉันเคยเห็นคำถามที่เกิดขึ้นซ้ำ ๆ เหล่านี้ซึ่งถามเกี่ยวกับแง่มุมต่าง ๆ ของการทำงานของหมีแพนด้า ข้อมูลส่วนใหญ่เกี่ยวกับการรวมและกรณีการใช้งานที่หลากหลายในทุกวันนี้มีการแยกส่วนจากการโพสต์ที่มีข้อความไม่ดีจำนวนมากและไม่สามารถค้นหาได้ จุดมุ่งหมายที่นี่คือการรวบรวมจุดสำคัญบางอย่างสำหรับลูกหลาน QnA นี้หมายถึงการผ่อนชำระครั้งต่อไปในชุดของคู่มือผู้ใช้ที่เป็นประโยชน์เกี่ยวกับสำนวนแพนด้าทั่วไป (ดูโพสต์เกี่ยวกับการหมุนเหวี่ยงและโพสต์นี้ในการเรียงต่อกัน โปรดทราบว่าโพสต์นี้ไม่ได้มีไว้เพื่อทดแทนเอกสารดังนั้นโปรดอ่านด้วย! ตัวอย่างบางส่วนนำมาจากที่นั่น
362 python  pandas  join  merge 

7
ฐานข้อมูลเข้าร่วมเมื่อใดและเพราะเหตุใด
ฉันกำลังทำการวิจัยในฐานข้อมูลและฉันกำลังดูข้อ จำกัด บางประการของฐานข้อมูลเชิงสัมพันธ์ ฉันได้รับการรวมโต๊ะขนาดใหญ่นั้นแพงมาก แต่ฉันไม่แน่ใจว่าทำไม DBMS ต้องทำอะไรเพื่อดำเนินการเข้าร่วมคอขวดอยู่ที่ไหน การปรับสภาพให้เป็นกลางสามารถช่วยเอาชนะค่าใช้จ่ายนี้ได้อย่างไร เทคนิคการปรับให้เหมาะสมอื่น ๆ (ตัวอย่างเช่นการจัดทำดัชนี) ช่วยได้อย่างไร? ยินดีต้อนรับประสบการณ์ส่วนตัว! หากคุณกำลังจะโพสต์ลิงก์ไปยังแหล่งข้อมูลโปรดหลีกเลี่ยง Wikipedia ฉันรู้ว่าจะหามันเจอแล้ว ในความสัมพันธ์กับเรื่องนี้ฉันสงสัยเกี่ยวกับวิธีการที่ผิดปกติที่ใช้โดยฐานข้อมูลบริการคลาวด์เช่น BigTable และ SimpleDB ดูคำถามนี้

8
Rails: include vs. : joins
นี่เป็นคำถามที่ว่า "ทำไมสิ่งต่าง ๆ ถึงทำงานแบบนี้" มากกว่าคำถามที่ว่า "ฉันไม่รู้จะทำอย่างไร" ดังนั้นพระกิตติคุณในการดึงบันทึกที่เกี่ยวข้องที่คุณรู้ว่าคุณจะใช้คือการใช้:includeเพราะคุณจะได้เข้าร่วมและหลีกเลี่ยงการสืบค้นเพิ่มเติม: Post.all(:include => :comments) อย่างไรก็ตามเมื่อคุณดูล็อกจะไม่มีการเข้าร่วมเกิดขึ้น: Post Load (3.7ms) SELECT * FROM "posts" Comment Load (0.2ms) SELECT "comments.*" FROM "comments" WHERE ("comments".post_id IN (1,2,3,4)) ORDER BY created_at asc) มันเป็นทางลัดเพราะมันดึงทุกความคิดเห็นในครั้งเดียว แต่ก็ยังไม่เข้าร่วม (ซึ่งเป็นสิ่งเอกสารทั้งหมดที่ดูเหมือนว่าจะพูด) วิธีเดียวที่ฉันจะเข้าร่วมได้คือใช้:joinsแทน:include: Post.all(:joins => :comments) และบันทึกแสดง: Post Load (6.0ms) SELECT "posts".* FROM "posts" INNER JOIN …

12
SQL Inner เข้าร่วมกับ 3 ตาราง?
ฉันพยายามที่จะเข้าร่วม 3 ตารางในมุมมอง; นี่คือสถานการณ์: ฉันมีตารางที่มีข้อมูลของนักเรียนที่สมัครเพื่อใช้ชีวิตในวิทยาเขตวิทยาลัยนี้ ฉันมีตารางอีกตารางหนึ่งที่แสดงรายการการตั้งค่า Hall (3 ของพวกเขา) สำหรับนักเรียนแต่ละคน แต่การตั้งค่าแต่ละอย่างเหล่านี้เป็นเพียงหมายเลข ID และหมายเลข ID มีชื่อฮอลล์ที่สอดคล้องกันในตารางที่สาม (ไม่ได้ออกแบบฐานข้อมูลนี้ ... ) ค่อนข้างมากฉันมีINNER JOINตารางที่มีการตั้งค่าของพวกเขาและข้อมูลของพวกเขาผลที่ได้คืออะไรเช่น ... John Doe | 923423 | Incoming Student | 005 ไหนจะเป็น005 HallIDดังนั้นตอนนี้ผมต้องการให้ตรงHallIDกับตารางที่สามที่ตารางนี้มีและHallIDHallName สวยมากฉันต้องการให้ผลลัพธ์ของฉันเป็นเหมือน ... John Doe | 923423 | Incoming Student | Foley Hall <---(INSTEAD OF 005) นี่คือสิ่งที่ฉันมีอยู่ในปัจจุบัน: SELECT s.StudentID, …
330 sql  join  inner-join 

9
วิธีรับจำนวนการนับด้วยแบบสอบถาม SQL หนึ่งรายการ
ฉันสงสัยว่าจะเขียนคำค้นหานี้อย่างไร ฉันรู้ว่าไวยากรณ์ที่แท้จริงนี้เป็นของปลอม แต่มันจะช่วยให้คุณเข้าใจสิ่งที่ฉันต้องการ ฉันต้องการมันในรูปแบบนี้เพราะมันเป็นส่วนหนึ่งของแบบสอบถามที่ใหญ่กว่ามาก SELECT distributor_id, COUNT(*) AS TOTAL, COUNT(*) WHERE level = 'exec', COUNT(*) WHERE level = 'personal' ฉันต้องการสิ่งนี้ทั้งหมดกลับมาในแบบสอบถามเดียว นอกจากนี้ต้องอยู่ในแถวเดียวดังนั้นสิ่งต่อไปนี้จะไม่ทำงาน: 'SELECT distributor_id, COUNT(*) GROUP BY distributor_id'
316 mysql  sql  join  count  group-by 

9
การเข้าร่วม SQL: เลือกระเบียนสุดท้ายในความสัมพันธ์แบบหนึ่ง - ต่อ - กลุ่ม
สมมติว่าฉันมีตารางลูกค้าและตารางการซื้อ การซื้อแต่ละครั้งเป็นของลูกค้าหนึ่งราย ฉันต้องการรับรายชื่อลูกค้าทั้งหมดพร้อมกับการซื้อครั้งสุดท้ายในหนึ่งคำสั่ง SELECT การปฏิบัติที่ดีที่สุดคืออะไร? คำแนะนำเกี่ยวกับการสร้างดัชนีใด ๆ โปรดใช้ชื่อตาราง / คอลัมน์เหล่านี้ในคำตอบของคุณ: ลูกค้า: id, ชื่อ การซื้อ: id, customer_id, item_id, วันที่ และในสถานการณ์ที่ซับซ้อนมากขึ้นจะเป็นประโยชน์ในการทำให้ฐานข้อมูลผิดปกติด้วยการซื้อสินค้าครั้งสุดท้ายลงในตารางลูกค้าหรือไม่ หากรหัส (ซื้อ) มีการรับประกันว่าจะเรียงตามวันที่งบสามารถจะง่ายขึ้นโดยใช้สิ่งที่ชอบLIMIT 1?



11
SQL ซ้ายเข้าร่วม vs หลายตารางในบรรทัดจาก?
ภาษาถิ่น SQL ส่วนใหญ่ยอมรับทั้งแบบสอบถามต่อไปนี้: SELECT a.foo, b.foo FROM a, b WHERE a.x = b.x SELECT a.foo, b.foo FROM a LEFT JOIN b ON a.x = b.x ตอนนี้เห็นได้ชัดเมื่อคุณต้องการเข้าร่วมด้านนอกไวยากรณ์ที่สองจะต้อง แต่เมื่อทำการรวมภายในทำไมฉันจึงควรเลือกไวยากรณ์ที่สองเป็นครั้งแรก (หรือกลับกัน)?
256 sql  syntax  join 


4
MySQL ON กับการใช้งาน?
ใน MySQL JOINอะไรคือความแตกต่างระหว่างONและUSING()? เท่าที่ฉันสามารถบอกได้ว่าUSING()เป็นเพียงความสะดวกสบายมากขึ้นในขณะที่ไวยากรณ์ONช่วยให้มีความยืดหยุ่นมากขึ้นเล็กน้อยเมื่อชื่อคอลัมน์ไม่เหมือนกัน อย่างไรก็ตามความแตกต่างที่ให้เล็ก ๆ น้อย ๆ USING()ที่คุณจะคิดว่าพวกเขาต้องการเพียงแค่ทำไปด้วย มีอะไรมากกว่านี้ตรงตา? ถ้าใช่ฉันควรใช้สิ่งใดในสถานการณ์ที่กำหนด
252 mysql  join  using 


12
วิธีการรวมใน LINQ บนหลาย ๆ ฟิลด์ในการเข้าร่วมครั้งเดียว
ฉันต้องทำแบบสอบถาม LINQ2DataSet ที่เข้าร่วมในมากกว่าหนึ่งฟิลด์ (เช่น var result = from x in entity join y in entity2 on x.field1 = y.field1 and x.field2 = y.field2 ฉันยังพบวิธีแก้ปัญหาที่เหมาะสม (ฉันสามารถเพิ่มข้อ จำกัด พิเศษให้กับส่วนคำสั่งได้ แต่นี่อยู่ไกลจากโซลูชันที่เหมาะสมหรือใช้โซลูชันนี้แต่ถือว่าเป็น equijoin) เป็นไปได้ใน LINQ ที่จะเข้าร่วมในหลายสาขาในการเข้าร่วมเดียว? แก้ไข var result = from x in entity join y in entity2 on new { x.field1, x.field2 } …
244 c#  linq  join 

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