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

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

3
ฉันจะแก้ไขตาราง PostgreSQL และสร้างคอลัมน์ที่ไม่ซ้ำได้อย่างไร
ฉันมีตารางใน PostgreSQL ซึ่ง schema มีลักษณะดังนี้: CREATE TABLE "foo_table" ( "id" serial NOT NULL PRIMARY KEY, "permalink" varchar(200) NOT NULL, "text" varchar(512) NOT NULL, "timestamp" timestamp with time zone NOT NULL ) ตอนนี้ฉันต้องการทำให้ลิงก์ถาวรที่ไม่ซ้ำกันทั่วทั้งตารางโดยการเปลี่ยนแปลงตาราง ใครช่วยฉันได้ไหม TIA

7
ชุดข้อมูล (Data Report) ในตัวออกแบบ SSRS หายไป
ในหน้าจอเลย์เอาต์ของตัวออกแบบ SSRS เช่น Visual Studio ฉันทำแผงข้อมูลรายงานหาย มันหายไปและฉันจำไม่ได้ว่ามันถูกเรียกว่าอะไรเพื่อที่จะเอามันกลับคืนมา รายการนี้มักจะแสดงรายการต่อไปนี้: ฟิลด์ในตัว พารามิเตอร์ ภาพ แหล่งข้อมูล ชุดข้อมูล ก่อนหน้านี้เคยอยู่ในพื้นที่เดียวกันกับพาเนล Toolbox และ Server explorer ไม่มีใครรู้วิธีการคืนค่าหรือไม่

9
ฉันจะยืนยันฐานข้อมูลเป็น Oracle & รุ่นใดที่ใช้ SQL อยู่?
ฉันกำลังสร้างตัวติดตั้งสำหรับแอปพลิเคชัน ผู้ใช้จะได้รับเลือกแหล่งข้อมูลที่กำหนดค่าและระบุประเภทของฐานข้อมูล ฉันต้องการยืนยันว่าประเภทฐานข้อมูลนั้นเป็น Oracle จริง ๆ และถ้าเป็นไปได้ Oracle รุ่นใดที่พวกเขากำลังทำงานอยู่โดยส่งคำสั่ง SQL ไปยังแหล่งข้อมูล
165 sql  oracle 

11
เข้าร่วมซ้ายซ้ายจะส่งกลับระเบียนมากกว่าที่มีอยู่ในตารางด้านซ้ายได้อย่างไร
ฉันมีการเข้าร่วมด้านซ้ายด้านนอกขั้นพื้นฐานมากเพื่อส่งคืนผลลัพธ์ทั้งหมดจากตารางด้านซ้ายและข้อมูลเพิ่มเติมจากตารางที่ใหญ่กว่ามาก ตารางด้านซ้ายมีระเบียน 4935 แต่เมื่อฉันออกไปด้านนอกเข้าร่วมกับตารางเพิ่มเติมการนับระเบียนนั้นใหญ่กว่ามาก เท่าที่ฉันทราบมันเป็นข่าวประเสริฐแน่นอนที่ซ้ายด้านนอกเข้าร่วมจะส่งกลับระเบียนทั้งหมดจากตารางด้านซ้ายด้วยระเบียนที่ตรงกันจากตารางด้านขวาและค่า null สำหรับแถวใด ๆ ที่ไม่สามารถจับคู่ได้ดังนั้นฉันเข้าใจว่าควร เป็นไปไม่ได้ที่จะส่งคืนแถวมากกว่าที่มีอยู่ในตารางด้านซ้าย แต่มันเกิดขึ้นเหมือนกันทั้งหมด! แบบสอบถาม SQL ดังนี้: SELECT SUSP.Susp_Visits.SuspReason, SUSP.Susp_Visits.SiteID FROM SUSP.Susp_Visits LEFT OUTER JOIN DATA.Dim_Member ON SUSP.Susp_Visits.MemID = DATA.Dim_Member.MembershipNum บางทีฉันได้ทำผิดพลาดในไวยากรณ์หรือความเข้าใจของฉันออกจากซ้ายเข้าร่วมไม่สมบูรณ์หวังว่าบางคนสามารถอธิบายว่าสิ่งนี้อาจเกิดขึ้นได้อย่างไร ป.ล. ขอบคุณสำหรับคำตอบที่ดีความเข้าใจของฉันในการเข้าร่วมด้านซ้ายด้านนอกตอนนี้ดีขึ้นมากใคร ๆ ก็สามารถแนะนำวิธีแก้ไขแบบสอบถามนี้เพื่อที่ฉันจะได้รับบันทึกกลับมาเท่าที่มีอยู่ในตารางด้านซ้าย แบบสอบถามนี้เป็นการสร้างรายงานอย่างหมดจดและการจับคู่ที่ซ้ำกันก็ทำให้เกิดความสับสน / Postscript

6
วิธีการสร้างตาราง Temp พร้อม SELECT * INTO tempTable จาก CTE Query
ฉันมีคิวรี่ MS SQL CTE ซึ่งฉันต้องการสร้างตารางชั่วคราว ฉันไม่แน่ใจว่าจะทำอย่างไรเพราะจะทำให้เกิดInvalid Object nameข้อผิดพลาด ด้านล่างนี้เป็นข้อความค้นหาทั้งหมดสำหรับการอ้างอิง SELECT * INTO TEMPBLOCKEDDATES FROM ;with Calendar as ( select EventID, EventTitle, EventStartDate, EventEndDate, EventEnumDays,EventStartTime,EventEndTime, EventRecurring, EventStartDate as PlannedDate ,EventType from EventCalender where EventActive = 1 AND LanguageID =1 AND EventBlockDate = 1 union all select EventID, EventTitle, EventStartDate, EventEndDate, EventEnumDays,EventStartTime,EventEndTime, …

9
Sql Server ที่เทียบเท่ากับฟังก์ชันการรวม COUNTIF
ฉันกำลังสร้างแบบสอบถามด้วยGROUP BYประโยคที่ต้องการความสามารถในการนับระเบียนตามเงื่อนไขบางอย่างเท่านั้น (เช่นนับเฉพาะระเบียนที่ค่าคอลัมน์ที่แน่นอนเท่ากับ 1) SELECT UID, COUNT(UID) AS TotalRecords, SUM(ContractDollars) AS ContractDollars, (COUNTIF(MyColumn, 1) / COUNT(UID) * 100) -- Get the average of all records that are 1 FROM dbo.AD_CurrentView GROUP BY UID HAVING SUM(ContractDollars) >= 500000 COUNTIF()บรรทัดเห็นได้ชัดว่าล้มเหลวตั้งแต่ยังไม่มีฟังก์ชั่น SQL พื้นเมืองเรียกว่าCOUNTIFแต่ความคิดที่นี่คือการกำหนดอัตราร้อยละของทุกแถวที่มีค่า '1' สำหรับ MyColumn มีความคิดเห็นเกี่ยวกับวิธีการนำไปใช้อย่างเหมาะสมในสภาพแวดล้อม MS SQL 2005 หรือไม่

5
วิธีตรวจสอบการมีอยู่ของชนิดตารางที่ผู้ใช้กำหนดใน SQL Server 2008
ฉันมีประเภทตารางที่ผู้ใช้กำหนด ฉันต้องการตรวจสอบว่ามีอยู่จริงก่อนทำการแก้ไขในแพทช์โดยใช้OBJECT_ID(name, type)ฟังก์ชั่น สิ่งtypeที่ควรจะส่งผ่านจากการแจงนับสำหรับประเภทตารางที่ผู้ใช้กำหนด? N'U' เช่นสำหรับตารางที่ผู้ใช้กำหนดไม่ทำงานเช่น IF OBJECT_ID(N'MyType', N'U') IS NOT NULL

15
การแปลงล้มเหลวเมื่อแปลงวันที่และ / หรือเวลาจากสตริงอักขระขณะแทรกวันที่และเวลา
ฉันพยายามสร้างตารางดังนี้ create table table1(date1 datetime,date2 datetime); ก่อนอื่นฉันลองใส่ค่าดังนี้ insert into table1 values('21-02-2012 6:10:00 PM','01-01-2001 12:00:00 AM'); มันทำให้เกิดข้อผิดพลาดในการพูด ไม่สามารถแปลง varchar เป็น datetime จากนั้นฉันลองรูปแบบด้านล่างเป็นหนึ่งในโพสต์ที่แนะนำโดย stackoverflow ของเรา insert into table1 values(convert(datetime,'21-02-2012 6:10:00 PM',5) ,convert(datetime,'01-01-2001 12:00:00 AM',5)); แต่ฉันยังคงได้รับข้อผิดพลาดที่บอกว่า การแปลงล้มเหลวเมื่อแปลงวันที่และ / หรือเวลาจากสตริงอักขระ ข้อเสนอแนะใด ๆ
164 sql  sql-server 

10
ข้อผิดพลาดในการเปลี่ยนชื่อฐานข้อมูลใน SQL Server 2008 R2
ฉันใช้แบบสอบถามนี้เพื่อเปลี่ยนชื่อฐานข้อมูล: ALTER DATABASE BOSEVIKRAM MODIFY NAME = [BOSEVIKRAM_Deleted] แต่มันแสดงข้อผิดพลาดเมื่อ excuting: ข่าวสารเกี่ยวกับ 5030 ระดับ 16 สถานะ 2 บรรทัด 1 ไม่สามารถล็อกฐานข้อมูลเพื่อทำการดำเนินการได้ มีข้อผิดพลาดเกิดขึ้นกับข้อความค้นหาของฉันหรือไม่

7
SQL เข้าร่วม vs ประสิทธิภาพ?
ฉันมีกรณีที่ใช้ JOIN หรือ IN จะให้ผลลัพธ์ที่ถูกต้อง ... ซึ่งโดยทั่วไปมีประสิทธิภาพที่ดีขึ้นและทำไม เท่าไหร่ก็ไม่ขึ้นอยู่กับสิ่งที่เซิร์ฟเวอร์ฐานข้อมูลที่คุณกำลังทำงานอยู่หรือไม่ (FYI ฉันใช้ MSSQL)

9
ตัวดำเนินการนี้คืออะไร <=> ใน MySQL
ฉันกำลังทำงานกับโค้ดที่เขียนโดยนักพัฒนาคนก่อนหน้านี้ WHERE p.name &lt;=&gt; NULL อะไร&lt;=&gt;หมายถึงในแบบสอบถามนี้? มันเท่ากับ=อะไรเหรอ? หรือเป็นข้อผิดพลาดทางไวยากรณ์หรือไม่ แต่จะไม่แสดงข้อผิดพลาดหรือข้อยกเว้น ผมรู้อยู่แล้วว่า&lt;&gt;= !=ในMySQL

5
DROP IF EXISTS VS DROP?
บางคนบอกฉันได้ไหมว่ามีความแตกต่างระหว่างกันหรือไม่ DROP IF EXISTS [TABLE_NAME] DROP [TABLE_NAME] ฉันถามสิ่งนี้เพราะฉันใช้เทมเพลต JDBC ในแอปพลิเคชันเว็บ MVC ของฉัน ถ้าฉันใช้DROP [TABLE_NAME]ข้อผิดพลาดกล่าวว่าตารางที่มีอยู่ และถ้าฉันใช้DROP IF EXISTS [TABLE_NAME]มันบอกว่าไวยากรณ์ SQL ไม่ดี มีใครช่วยได้บ้าง
163 sql  drop-table 



16
SQL Call Stored Procedure สำหรับแต่ละแถวโดยไม่ใช้เคอร์เซอร์
เราจะเรียกโพรซีเดอร์ที่เก็บไว้สำหรับแต่ละแถวในตารางโดยที่คอลัมน์ของแถวเป็นพารามิเตอร์อินพุตไปยัง sp โดยไม่ต้องใช้เคอร์เซอร์ได้อย่างไร?

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