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

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

9
ลบหนึ่งวันจากวันที่และเวลา
ฉันมีคำถามในการดึงข้อมูลวันที่แตกต่างระหว่าง 2 วันและเวลาเป็น: SELECT DATEDIFF(DAY, @CreatedDate , GETDATE()) Ex : SELECT DATEDIFF(DAY, '2013-03-13 00:00:00.000' , GETDATE()) ฉันต้องการให้แบบสอบถามทำงานเช่นนี้ซึ่งจะลบวันจากวันที่สร้าง: SELECT DATEDIFF(DAY, **@CreatedDate- 1** , GETDATE())
102 sql  sql-server  datetime 

4
เราสามารถมี“ WITH AS” หลายตัวใน sql เดียวได้หรือไม่ - Oracle SQL
ฉันมีคำถามง่ายๆ: oracle อนุญาต "WITH AS" หลายรายการในคำสั่ง sql เดียวหรือไม่ ตัวอย่าง: WITH abc AS( select ......) WITH XYZ AS(select ....) /*This one uses "abc" multiple times*/ Select .... /*using XYZ multiple times*/ ฉันสามารถทำให้การสืบค้นทำงานได้โดยการทำแบบสอบถามเดียวกันซ้ำหลาย ๆ ครั้ง แต่ไม่ต้องการทำเช่นนั้นและใช้ประโยชน์จาก "WITH AS" ดูเหมือนเป็นข้อกำหนดง่ายๆ แต่ oracle ไม่อนุญาตให้ฉัน: ORA-00928: ไม่มีคำหลัก SELECT
102 sql  oracle 

13
ฉันจะใช้ XML แทน SQL เมื่อใด [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ฉันทำงานเกี่ยวกับเว็บแอปพลิเคชันที่ขับเคลื่อนด้วยฐานข้อมูลมาหลายปีแล้วและเพิ่งทำโครงการที่เกี่ยวข้องกับ CMS ที่รองรับ XML ได้ สิ่งนี้ทำให้ฉันคิดถึงการใช้ XML / XSLT โดยทั่วไปและในสถานการณ์ใดที่จะมีประโยชน์มากกว่าแนวทางที่ฉันใช้มาโดยตลอดซึ่งจัดเก็บข้อมูลทั้งหมดของฉันไว้ในฐานข้อมูล SQL (ของฉัน) แล้วใช้ PHP / Python / ฯลฯ เพื่อใช้งานบนเว็บได้ตามต้องการ เห็นได้ชัดว่ามีบางอย่างที่ฉัน "ไม่ได้รับ" ที่นี่ .. ใครช่วยยกตัวอย่างแอปพลิเคชันที่เก็บข้อมูลในไฟล์ XML แทนที่จะเป็นฐานข้อมูลได้ไหม
102 sql  xml 


5
วิธีที่ง่ายที่สุดในการเข้าร่วมด้วยตนเองแบบเรียกซ้ำ?
วิธีที่ง่ายที่สุดในการเข้าร่วมด้วยตนเองแบบเรียกซ้ำใน SQL Server คืออะไร ฉันมีโต๊ะแบบนี้: PersonID | Initials | ParentID 1 CJ NULL 2 EB 1 3 MB 1 4 SW 2 5 YT NULL 6 IS 5 และฉันต้องการรับเรกคอร์ดที่เกี่ยวข้องกับลำดับชั้นโดยเริ่มจากบุคคลที่ระบุเท่านั้น ดังนั้นหากฉันขอลำดับชั้นของ CJ ตาม PersonID = 1 ฉันจะได้รับ: PersonID | Initials | ParentID 1 CJ NULL 2 EB 1 3 MB 1 …

7
ฉันจะค้นหารายการที่ซ้ำกันในหลายคอลัมน์ได้อย่างไร
ดังนั้นฉันต้องการทำบางอย่างเช่นโค้ด sql ด้านล่างนี้: select s.id, s.name,s.city from stuff s group by s.name having count(where city and name are identical) > 1 ในการสร้างสิ่งต่อไปนี้ (แต่ไม่สนใจที่ที่จะจับคู่เฉพาะชื่อหรือเมืองเท่านั้นต้องอยู่ในคอลัมน์ทั้งสอง): id name city 904834 jim London 904835 jim London 90145 Fred Paris 90132 Fred Paris 90133 Fred Paris

4
ฉันจะนำเข้าไฟล์. sql ไปยัง SQLite 3 ได้อย่างไร
ฉันมีไฟล์. sql ที่มีเนื้อหาต่อไปนี้: #cat db.sql create table server(name varchar(50),ipaddress varchar(15),id init) create table client(name varchar(50),ipaddress varchar(15),id init) ฉันจะนำเข้าไฟล์นี้ไปยัง SQLite เพื่อให้ไฟล์เหล่านี้ถูกสร้างขึ้นโดยอัตโนมัติได้อย่างไร
102 sql  sqlite 

10
เหตุผลที่ดีในการใช้มุมมอง SQL คืออะไร?
ฉันกำลังอ่านพระคัมภีร์ SQL Server 2008 และฉันกำลังพูดถึงส่วนมุมมอง แต่ผู้เขียนไม่ได้อธิบายวัตถุประสงค์ของมุมมองจริงๆ ใช้ประโยชน์อะไรสำหรับมุมมอง? ฉันควรใช้พวกเขาในเว็บไซต์ของฉันและประโยชน์ของพวกเขาคืออะไร?
102 sql  sql-server 

10
การจัดรูปแบบสตริงการสืบค้น Python SQL
ฉันกำลังพยายามหาวิธีที่ดีที่สุดในการจัดรูปแบบสตริงการสืบค้น sql เมื่อฉันดีบักแอปพลิเคชันของฉันฉันต้องการเข้าสู่ไฟล์สตริงการสืบค้น sql ทั้งหมดและสิ่งสำคัญคือสตริงจะถูกจัดรูปแบบอย่างถูกต้อง ตัวเลือกที่ 1 def myquery(): sql = "select field1, field2, field3, field4 from table where condition1=1 and condition2=2" con = mymodule.get_connection() ... สิ่งนี้เหมาะสำหรับการพิมพ์สตริง sql ไม่ใช่วิธีแก้ปัญหาที่ดีหากสตริงยาวและไม่พอดีกับความกว้างมาตรฐาน 80 อักขระ ทางเลือกที่ 2 def query(): sql = """ select field1, field2, field3, field4 from table where condition1=1 and condition2=2""" con …

9
PostgreSQL - ดึงแถวที่มีค่าสูงสุดสำหรับคอลัมน์
ฉันกำลังจัดการกับตาราง Postgres (เรียกว่า "ชีวิต") ที่มีระเบียนที่มีคอลัมน์สำหรับ time_stamp, usr_id, transaction_id และ lives_remaining ฉันต้องการคำค้นหาที่จะให้ผลรวม life_remaining ล่าสุดสำหรับ usr_id แต่ละรายการ มีผู้ใช้หลายคน (usr_id ต่างกัน) time_stamp ไม่ใช่ตัวระบุที่ไม่ซ้ำกัน: บางครั้งเหตุการณ์ของผู้ใช้ (ทีละแถวในตาราง) จะเกิดขึ้นพร้อมกับ time_stamp เดียวกัน trans_id จะไม่ซ้ำกันสำหรับช่วงเวลาที่เล็กมากเท่านั้น: เมื่อเวลาผ่านไปจะเกิดซ้ำ ส่วนที่เหลือ (สำหรับผู้ใช้ที่ระบุ) สามารถเพิ่มและลดได้เมื่อเวลาผ่านไป ตัวอย่าง: time_stamp | lives_remaining | usr_id | trans_id ----------------------------------------- 07:00 | 1 | 1 | 1 09:00 | 4 …

9
ค้นหาชื่อตาราง
ฉันใช้สิ่งต่อไปนี้เพื่อค้นหาสตริงในโพรซีเดอร์ที่เก็บไว้ของฉัน: use DBname SELECT Name FROM sys.procedures WHERE OBJECT_DEFINITION(OBJECT_ID) LIKE '%xxx%' การแก้ไขข้างต้นเป็นเรื่องง่ายเพื่อให้ค้นหาชื่อตารางในฐานข้อมูลเฉพาะ "DBname" หรือไม่?

5
เรียกใช้แบบสอบถามด้วย LIMIT / OFFSET และรับจำนวนแถวทั้งหมด
เพื่อจุดประสงค์ในการแบ่งหน้าฉันต้องการเรียกใช้แบบสอบถามที่มีLIMITและOFFSETอนุประโยค แต่ฉันยังต้องการจำนวนแถวที่จะถูกส่งคืนโดยแบบสอบถามนั้นโดยไม่มีLIMITและส่วนOFFSETคำสั่ง ฉันต้องการวิ่ง: SELECT * FROM table WHERE /* whatever */ ORDER BY col1 LIMIT ? OFFSET ? และ: SELECT COUNT(*) FROM table WHERE /* whatever */ ในเวลาเดียวกัน. มีวิธีดำเนินการโดยเฉพาะอย่างยิ่งวิธีที่ช่วยให้ Postgres ปรับให้เหมาะสมเพื่อให้ทำงานได้เร็วกว่าการทำงานทั้งสองอย่างทีละรายการ

13
วิธีการกรองผลลัพธ์ SQL ในความสัมพันธ์แบบหลายผ่าน
สมมติว่าผมมีตารางstudent, clubและstudent_club: student { id name } club { id name } student_club { student_id club_id } ฉันต้องการทราบวิธีค้นหานักเรียนทุกคนในชมรมฟุตบอล (30) และเบสบอล (50) แม้ว่าการสืบค้นนี้จะใช้ไม่ได้ผล แต่ก็เป็นสิ่งที่ใกล้เคียงที่สุดที่ฉันมี: SELECT student.* FROM student INNER JOIN student_club sc ON student.id = sc.student_id LEFT JOIN club c ON c.id = sc.club_id WHERE c.id = 30 AND c.id = …

4
จะสร้างดัชนีเฉพาะในคอลัมน์ NULL ได้อย่างไร?
ฉันใช้ SQL Server 2005 ฉันต้องการ จำกัด ค่าในคอลัมน์ให้ไม่ซ้ำกันในขณะที่อนุญาต NULLS โซลูชันปัจจุบันของฉันเกี่ยวข้องกับดัชนีเฉพาะในมุมมองดังนี้: CREATE VIEW vw_unq WITH SCHEMABINDING AS SELECT Column1 FROM MyTable WHERE Column1 IS NOT NULL CREATE UNIQUE CLUSTERED INDEX unq_idx ON vw_unq (Column1) มีความคิดที่ดีกว่านี้ไหม

7
กำลังตรวจสอบช่องว่างด้วย MySQL
ฉันได้เขียนข้อความค้นหาเพื่อตรวจสอบผู้ใช้ที่มีเกณฑ์บางอย่างคือพวกเขามีที่อยู่อีเมล ไซต์ของเราจะอนุญาตให้ผู้ใช้มีหรือไม่มีที่อยู่อีเมล $aUsers=$this->readToArray(' SELECT `userID` FROM `users` WHERE `userID` IN(SELECT `userID` FROM `users_indvSettings` WHERE `indvSettingID`=5 AND `optionID`='.$time.') AND `email`!="" '); นี่เป็นวิธีที่ดีที่สุดในการตรวจสอบช่องว่างใน SQL หรือไม่ ฉันเพิ่งลอง "IS NOT NULL" และสิ่งนี้ยังคงส่งคืนบันทึกผู้ใช้โดยที่พวกเขาไม่มีที่อยู่อีเมล ข้อความค้นหาข้างต้นใช้งานได้ แต่ด้วยความอยากรู้อยากเห็นฉันสงสัยว่าฉันกำลังทำอย่างถูกต้องหรือไม่
101 php  sql  mysql  null 

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