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

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

10
ลบ Identity ออกจากคอลัมน์ในตาราง
เรามีตาราง 5GB (เกือบ 500 ล้านแถว) และเราต้องการลบคุณสมบัติประจำตัวในคอลัมน์ใดคอลัมน์หนึ่ง แต่เมื่อเราพยายามทำสิ่งนี้ผ่าน SSMS มันจะหมดเวลา สามารถทำได้ผ่าน T-SQL หรือไม่?
127 sql  sql-server  tsql 

5
แบบสอบถาม Postgresql ระหว่างช่วงวันที่
ฉันพยายามสอบถามฐานข้อมูล postgresql ของฉันเพื่อส่งคืนผลลัพธ์ที่วันที่อยู่ในเดือนและปีที่แน่นอน กล่าวอีกนัยหนึ่งฉันต้องการค่าทั้งหมดสำหรับเดือนต่อปี วิธีเดียวที่ฉันทำได้จนถึงตอนนี้คือ: SELECT user_id FROM user_logs WHERE login_date BETWEEN '2014-02-01' AND '2014-02-28' ปัญหาคือฉันต้องคำนวณวันที่แรกและวันที่สุดท้ายก่อนที่จะค้นหาตาราง มีวิธีที่ง่ายกว่านี้ไหม ขอบคุณ
127 sql  postgresql  date  between 

2
ใหญ่แค่ไหนสำหรับตาราง PostgreSQL?
ฉันกำลังดำเนินการออกแบบโครงการ RoR สำหรับ บริษัท ของฉันและทีมพัฒนาของเราได้พบกับการถกเถียงกันเล็กน้อยเกี่ยวกับการออกแบบโดยเฉพาะฐานข้อมูล เรามีรูปแบบที่เรียกMessageว่าต้องคงอยู่ เป็นโมเดลขนาดเล็กมากที่มีคอลัมน์ db เพียงสามคอลัมน์นอกเหนือจาก id แต่จะมีโมเดลเหล่านี้จำนวนมากเมื่อเราไปที่การผลิต เรากำลังดูการแทรกมากถึง 1,000,000 ครั้งต่อวัน โมเดลจะถูกค้นหาโดยคีย์ต่างประเทศสองคีย์เท่านั้นซึ่งสามารถจัดทำดัชนีได้ เช่นกันแบบจำลองไม่จำเป็นต้องถูกลบ แต่เราไม่จำเป็นต้องเก็บไว้เมื่อมันมีอายุประมาณสามเดือน ดังนั้นสิ่งที่เราสงสัยคือการใช้ตารางนี้ใน Postgres จะทำให้เกิดปัญหาด้านประสิทธิภาพที่สำคัญหรือไม่? ใครมีประสบการณ์เกี่ยวกับฐานข้อมูล SQL ขนาดใหญ่มากช่วยบอกเราได้หรือไม่ว่าปัญหานี้จะเป็นปัญหา? ถ้าเป็นเช่นนั้นเราควรเลือกทางเลือกใด

3
MySQL Select Query - รับเพียง 10 อักขระแรกของค่า
ตกลงนี่คือปัญหา ฉันมีตารางที่มีคอลัมน์บางคอลัมน์และ 'หัวเรื่อง' เป็นหนึ่งในคอลัมน์ ฉันต้องการรับตัวอักษร 10 ตัวแรกจากฟิลด์ "หัวเรื่อง" ไม่ว่าฟิลด์ "หัวเรื่อง" จะมีสตริงที่มีตัวอักษร 100 ตัวก็ตาม ตัวอย่างเช่น, ตาราง - tbl. คอลัมน์ id- subject, value, แบบสอบถาม SQL: SELECT subject FROM tbl WHERE id ='$id'; ตัวอย่างเช่นผลลัพธ์ที่ฉันได้รับคือ สวัสดีนี่เป็นเรื่องของฉันและเป็นอย่างไรบ้าง ฉันต้องการอักขระ 10 ตัวแรกเท่านั้น สวัสดีคุณ ฉันเข้าใจว่าฉันสามารถลบอักขระที่เหลือโดยใช้ php substr () ได้ แต่ในกรณีของฉันไม่สามารถทำได้ ฉันต้องการลบอักขระส่วนเกินออกโดย MySQL จะทำได้อย่างไร?
126 mysql  sql  select 

4
วิธีใช้ Oracle ORDER BY และ ROWNUM อย่างถูกต้อง?
ฉันมีปัญหาในการแปลงกระบวนงานที่จัดเก็บจาก SQL Server เป็น Oracle เพื่อให้ผลิตภัณฑ์ของเราเข้ากันได้กับมัน ฉันมีคำถามที่ส่งคืนระเบียนล่าสุดของตารางบางตารางโดยอิงตามการประทับเวลา: เซิร์ฟเวอร์ SQL: SELECT TOP 1 * FROM RACEWAY_INPUT_LABO ORDER BY t_stamp DESC => นั่นจะส่งคืนบันทึกล่าสุดให้ฉัน แต่Oracle: SELECT * FROM raceway_input_labo WHERE rownum <= 1 ORDER BY t_stamp DESC => นั่นจะส่งคืนบันทึกที่เก่าแก่ที่สุดให้ฉัน (อาจขึ้นอยู่กับดัชนี) โดยไม่คำนึงถึงORDER BYคำสั่ง! ฉันสรุปการสืบค้น Oracle ด้วยวิธีนี้เพื่อให้ตรงกับความต้องการของฉัน: SELECT * FROM (SELECT * FROM raceway_input_labo ORDER …

11
LINQ เป็นเอนทิตีไม่รู้จักเมธอด 'System.String ToString ()' และวิธีนี้ไม่สามารถแปลเป็นนิพจน์ร้านค้าได้
ฉันกำลังย้ายข้อมูลบางอย่างจากเซิร์ฟเวอร์ mysql หนึ่งไปยังเซิร์ฟเวอร์ sql แต่ฉันไม่สามารถหาวิธีทำให้รหัสนี้ทำงานได้: using (var context = new Context()) { ... foreach (var item in collection) { IQueryable<entity> pages = from p in context.pages where p.Serial == item.Key.ToString() select p; foreach (var page in pages) { DataManager.AddPageToDocument(page, item.Value); } } Console.WriteLine("Done!"); Console.Read(); } เมื่อเข้าสู่วินาทีforeach (var page in pages)จะแสดงข้อยกเว้นว่า: …
126 c#  mysql  sql  linq 

3
SQL (MySQL) เทียบกับ NoSQL (CouchDB) [ปิด]
ปิด . คำถามนี้เป็นคำถามความคิดเห็นตาม ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบได้ด้วยข้อเท็จจริงและการอ้างอิงโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ ฉันอยู่ระหว่างการออกแบบแอปพลิเคชันที่ปรับขนาดได้สูงซึ่งต้องจัดเก็บข้อมูลจำนวนมาก ตัวอย่างเช่นมันจะเก็บข้อมูลเกี่ยวกับผู้ใช้จำนวนมากจากนั้นสิ่งต่างๆเช่นข้อความความคิดเห็น ฯลฯ จำนวนมากฉันเคยใช้ MySQL มาก่อน แต่ตอนนี้ฉันตั้งใจที่จะลองสิ่งใหม่ ๆ เช่น couchdb หรือสิ่งที่คล้ายกันซึ่งไม่ใช่ SQL ใครมีความคิดหรือคำแนะนำเกี่ยวกับเรื่องนี้หรือไม่?
126 mysql  sql  nosql  couchdb 

29
เทคนิคการปรับแต่งประสิทธิภาพที่ชื่นชอบ [ปิด]
ตามที่กล่าวไว้ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา เมื่อคุณมีแบบสอบถามหรือขั้นตอนการจัดเก็บที่ต้องการการปรับแต่งประสิทธิภาพสิ่งแรกที่คุณลองทำคืออะไร?

15
การเรียงลำดับแบบไดนามิกภายใน SQL Stored Procedures
นี่เป็นปัญหาที่ฉันใช้เวลาหลายชั่วโมงในการค้นคว้าในอดีต สำหรับฉันแล้วดูเหมือนว่าจะเป็นสิ่งที่ควรได้รับการแก้ไขโดยโซลูชันRDBMS ที่ทันสมัยแต่ฉันยังไม่พบสิ่งใดที่ตอบสนองสิ่งที่ฉันเห็นว่าเป็นความต้องการทั่วไปอย่างไม่น่าเชื่อในเว็บหรือแอปพลิเคชัน Windows ที่มีฐานข้อมูลส่วนหลัง ฉันพูดถึงการเรียงลำดับแบบไดนามิก ในโลกแฟนตาซีของฉันมันควรจะเรียบง่ายเหมือนกับ: ORDER BY @sortCol1, @sortCol2 นี่คือตัวอย่างมาตรฐานที่กำหนดโดยผู้พัฒนา SQL มือใหม่และStored Procedureทั่วฟอรัมต่างๆบนอินเทอร์เน็ต "ทำไมถึงทำไม่ได้" พวกเขาถาม. ในที่สุดก็มีใครบางคนมาบรรยายเกี่ยวกับลักษณะการรวบรวมของขั้นตอนการจัดเก็บแผนการดำเนินการโดยทั่วไปและเหตุผลอื่น ๆ อีกมากมายว่าทำไมจึงไม่สามารถใส่พารามิเตอร์ลงในORDER BYประโยคได้โดยตรง ฉันรู้ว่าพวกคุณบางคนกำลังคิดอะไรอยู่แล้ว: "ให้ลูกค้าจัดการเรียงลำดับ" โดยปกติแล้วสิ่งนี้จะลดการทำงานออกจากฐานข้อมูลของคุณ ในกรณีของเราเซิร์ฟเวอร์ฐานข้อมูลของเราไม่ได้ทำลายเหงื่อ 99% ของเวลาและยังไม่ได้เป็นแบบมัลติคอร์หรือการปรับปรุงสถาปัตยกรรมระบบอื่น ๆ อีกมากมายที่เกิดขึ้นทุกๆ 6 เดือน ด้วยเหตุนี้เพียงอย่างเดียวการมีฐานข้อมูลของเราจัดการกับการเรียงลำดับจะไม่เป็นปัญหา นอกจากนี้ฐานข้อมูลเป็นอย่างมากเก่งในการจัดเรียง พวกเขาได้รับการปรับให้เหมาะสมและใช้เวลาหลายปีในการทำให้ถูกต้องภาษาที่ใช้ทำนั้นมีความยืดหยุ่นใช้งานง่ายและเรียบง่ายและเหนือสิ่งอื่นใดนักเขียน SQL มือใหม่รู้วิธีการทำและที่สำคัญยิ่งกว่านั้นพวกเขารู้วิธีแก้ไข ทำการเปลี่ยนแปลงทำการบำรุงรักษา ฯลฯ เมื่อฐานข้อมูลของคุณห่างไกลจากการถูกเก็บภาษีและคุณเพียงแค่ต้องการลดความซับซ้อนของเวลาในการพัฒนา (และย่น!) สิ่งนี้ดูเหมือนจะเป็นทางเลือกที่ชัดเจน แล้วมีปัญหาเว็บ ฉันได้เล่นกับ JavaScript ที่จะทำการจัดเรียงตาราง HTML ฝั่งไคลเอ็นต์ แต่ก็ไม่สามารถยืดหยุ่นได้เพียงพอสำหรับความต้องการของฉันและอีกครั้งเนื่องจากฐานข้อมูลของฉันไม่ได้เก็บภาษีมากเกินไปและสามารถจัดเรียงได้อย่างง่ายดายจริงๆฉัน มีช่วงเวลาที่ยากลำบากในการระบุเวลาที่ต้องใช้ในการเขียนซ้ำหรือม้วนตัวเรียงลำดับ JavaScript …

4
MySQL เลือกค่าต่ำสุด / สูงสุดระหว่างสองค่า (หรือมากกว่า) ที่กำหนด
เป็นไปได้SELECTหรือไม่ที่ค่าต่ำสุดหรือสูงสุดระหว่างค่าสองค่าขึ้นไป ฉันต้องการสิ่งนี้: SELECT MAX_VALUE(A.date0, B.date0) AS date0, MIN_VALUE(A.date1, B.date1) AS date1 FROM A, B WHERE B.x = A.x ฉันสามารถบรรลุสิ่งนี้ได้โดยใช้ MySQL เท่านั้นหรือไม่?
126 mysql  sql 

18
คอลัมน์ที่ไม่รู้จักในที่ซึ่งข้อ
ฉันมีคำถามง่ายๆ: SELECT u_name AS user_name FROM users WHERE user_name = "john"; ฉันเข้าใจUnknown Column 'user_name' in where clauseแล้ว ฉันไม่สามารถอ้างถึง'user_name'ในส่วนอื่น ๆ ของแถลงการณ์ได้select 'u_name as user_name'หรือไม่?

6
การเพิ่มข้อมูลประจำตัวกำลังกระโดดในฐานข้อมูล SQL Server
ในตารางของฉันFeeในคอลัมน์ "ReceiptNo" ในการเพิ่มข้อมูลประจำตัวฐานข้อมูล SQL Server 2012 ก็เริ่มกระโดดไปที่ 100s แทนที่จะเป็น 1 ขึ้นอยู่กับสองสิ่งต่อไปนี้ ถ้ามันคือ 1205446 มันกระโดดไปที่ 1206306 ถ้ามันคือ 1206321 มันจะข้ามไปที่ 1207306 และถ้ามันคือ 1207314 มันจะข้ามไปที่ 1208306 สิ่งที่ฉันอยากจะแจ้งให้คุณทราบก็คือตัวเลขสามตัวสุดท้ายจะคงที่นั่นคือ 306 ทุกครั้งที่กระโดด เกิดขึ้นดังแสดงในภาพต่อไปนี้ ปัญหานี้เกิดขึ้นเมื่อฉันรีสตาร์ทคอมพิวเตอร์

5
SQL - คีย์หลักของตารางหลายต่อหลายตาราง
คำถามนี้เกิดขึ้นหลังจากอ่านความคิดเห็นในคำถามนี้: การออกแบบฐานข้อมูล เมื่อคุณสร้างตารางแบบกลุ่มต่อกลุ่มคุณควรสร้างคีย์หลักแบบผสมในคอลัมน์คีย์นอกสองคอลัมน์หรือสร้างคีย์หลัก "ID" ตัวแทน "ที่เพิ่มขึ้นอัตโนมัติ" และใส่ดัชนีในคอลัมน์ FK สองคอลัมน์ของคุณ (และอาจ ข้อ จำกัด เฉพาะ)? อะไรคือผลกระทบต่อประสิทธิภาพในการแทรกระเบียนใหม่ / การจัดทำดัชนีใหม่ในแต่ละกรณี? โดยทั่วไปสิ่งนี้: PartDevice ---------- PartID (PK/FK) DeviceID (PK/FK) เทียบกับสิ่งนี้: PartDevice ---------- ID (PK/auto-increment) PartID (FK) DeviceID (FK) ผู้แสดงความคิดเห็นกล่าวว่า: การทำให้สอง ID เป็น PK หมายถึงตารางถูกเรียงลำดับทางกายภาพบนดิสก์ตามลำดับนั้น ดังนั้นหากเราแทรก (Part1 / Device1), (Part1 / Device2), (Part2 / Device3) ดังนั้น (Part …


13
รายการ python ในแบบสอบถาม sql เป็นพารามิเตอร์
ฉันมีรายการหลามพูด l l = [1,5,8] ฉันต้องการเขียนแบบสอบถาม sql เพื่อรับข้อมูลสำหรับองค์ประกอบทั้งหมดของรายการพูด select name from students where id = |IN THE LIST l| ฉันจะทำสิ่งนี้ให้สำเร็จได้อย่างไร?
125 python  sql 

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