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

T-SQL (ภาษาคิวรีธุรกรรมเชิงโครงสร้าง) เป็นส่วนเสริมของฟังก์ชัน SQL ที่รองรับโดย Sybase ASE และ Microsoft SQL Server อย่าใช้แท็กนี้สำหรับการสืบค้นที่เกี่ยวข้องกับ MySQL, PostgreSql, Oracle (Pl / SQL) โปรดทราบว่ารหัส SQL ที่กำลังเขียนโดยใช้ LINQ จะไม่เป็นส่วนหนึ่งของแท็กนี้ด้วย แท็กนี้สร้างขึ้นโดยเฉพาะสำหรับการเขียนโปรแกรม SQL ขั้นสูงโดยใช้ Microsoft SQL Server

7
IDENTITY_INSERT ถูกตั้งค่าเป็นปิด - จะเปิดได้อย่างไร?
ฉันมีฐานข้อมูลไฟล์เก็บถาวรที่ถูกลบซึ่งเก็บ ID ของไฟล์ที่ถูกลบฉันต้องการให้ผู้ดูแลระบบสามารถกู้คืนไฟล์ได้ (รวมถึง ID เดียวกันสำหรับการลิงก์ไฟล์) ฉันไม่ต้องการนำ identity_insert ออกจากทั้งตารางเนื่องจากการเพิ่มทีละรายการทำได้ดีมาก ในTBL_Contentขั้นตอนการแทรกเพื่อจัดเก็บของฉันฉันมีสิ่งนี้ set ANSI_NULLS ON set QUOTED_IDENTIFIER ON SET IDENTITY_INSERT tbl_content ON GO ALTER procedure [dbo].[spInsertDeletedIntoTBLContent] @ContentID int, ...insert command... SET IDENTITY_INSERT tbl_content OFF แต่ฉันยังคงได้รับข้อผิดพลาดเดิม: ไม่สามารถแทรกค่าที่ชัดเจนสำหรับคอลัมน์ข้อมูลประจำตัวในตาราง "TBL_Content" เมื่อ IDENTITY_INSERT ถูกตั้งค่าเป็น OFF ความช่วยเหลือใด ๆ
112 sql  sql-server  tsql 

11
SQL: BETWEEN เทียบกับ <= และ> =
ใน SQL Server 2000 และ 2005: อะไรคือความแตกต่างระหว่างสองWHEREข้อนี้? ฉันควรใช้กับสถานการณ์ใด คำค้นหา 1: SELECT EventId, EventName FROM EventMaster WHERE EventDate BETWEEN '10/15/2009' AND '10/18/2009' แบบสอบถาม 2: SELECT EventId, EventName FROM EventMaster WHERE EventDate &gt;='10/15/2009' AND EventDate &lt;='10/18/2009' (แก้ไข: Eventdate ที่สองเดิมหายไปดังนั้นแบบสอบถามจึงผิดทางไวยากรณ์)
111 sql  sql-server  tsql  where  between 

4
วิธีสร้างตารางด้วยคอลัมน์ประจำตัว
ฉันมีตารางอยู่แล้วซึ่งฉันกำลังจะระเบิดเพราะฉันไม่ได้สร้างมันขึ้นมาพร้อมกับIDคอลัมน์ที่กำหนดให้เป็นคอลัมน์ Identity ของตาราง เมื่อใช้SQL Server Management Studioฉันเขียนสคริปต์"Create To ... "ของตารางที่มีอยู่และได้รับสิ่งนี้: CREATE TABLE [dbo].[History]( [ID] [int] NOT NULL, [RequestID] [int] NOT NULL, [EmployeeID] [varchar](50) NOT NULL, [DateStamp] [datetime] NOT NULL, CONSTRAINT [PK_History] PRIMARY KEY CLUSTERED ( [ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, …
111 sql  sql-server  tsql 

16
วิธีนับอินสแตนซ์ของอักขระในคอลัมน์ SQL
ฉันมีคอลัมน์ sql ที่เป็นสตริงอักขระ 100 'Y' หรือ 'N' ตัวอย่างเช่น: ปปปปปปปปปป ... วิธีใดเป็นวิธีที่ง่ายที่สุดในการนับสัญลักษณ์ 'Y' ทั้งหมดในแต่ละแถว
111 sql  string  tsql  count  symbols 

5
วิธีกำหนดผลลัพธ์ exec ให้กับตัวแปร sql?
คุณกำหนดผลลัพธ์ของการเรียก exec ให้กับตัวแปรใน SQL ได้อย่างไร? ฉันมี proc ที่เก็บไว้up_GetBusinessDayซึ่งเรียกว่าซึ่งส่งคืนวันที่เดียว คุณสามารถทำสิ่งนี้ได้หรือไม่: exec @PreviousBusinessDay = dbo.up_GetBusinessDay @Date, -1

4
Oracle เทียบเท่ากับฟังก์ชัน IsNull () ของ SQL Server คืออะไร
Наэтотвопросестьответына Stack Overflow нарусском : Естьлиэквивалент SQL Server функции IsNull () в Oracle? ใน SQL Server เราสามารถพิมพ์IsNull()เพื่อตรวจสอบว่าฟิลด์เป็นโมฆะหรือไม่ มีฟังก์ชันเทียบเท่าใน PL / SQL หรือไม่?
110 sql-server  oracle  tsql  plsql 

9
วิธีง่ายๆในการเปลี่ยนคอลัมน์และแถวใน SQL?
ฉันจะสลับคอลัมน์ด้วยแถวใน SQL ได้อย่างไร มีคำสั่งง่ายๆในการเปลี่ยนหรือไม่? เช่นเปิดผลลัพธ์นี้: Paul | John | Tim | Eric Red 1 5 1 3 Green 8 4 3 5 Blue 2 2 9 1 ในสิ่งนี้: Red | Green | Blue Paul 1 8 2 John 5 4 2 Tim 1 3 9 Eric 3 5 1 PIVOT …
110 sql  sql-server  tsql  pivot 

7
ฟังก์ชัน COALESCE ใน TSQL
ใครช่วยอธิบายว่าฟังก์ชัน COALESCE ใน TSQL ทำงานอย่างไร ไวยากรณ์มีดังนี้ COALESCE (x, y) เอกสาร MSDN ในฟังก์ชันนี้ค่อนข้างคลุมเครือ

8
หลีกเลี่ยงรายการที่ซ้ำกันใน INSERT INTO SELECT query ใน SQL Server
ฉันมีสองตารางต่อไปนี้: Table1 ---------- ID Name 1 A 2 B 3 C Table2 ---------- ID Name 1 Z ฉันต้องใส่ข้อมูลจากการTable1 Table2ฉันสามารถใช้ไวยากรณ์ต่อไปนี้: INSERT INTO Table2(Id, Name) SELECT Id, Name FROM Table1 อย่างไรก็ตามในกรณีของฉัน ID ที่ซ้ำกันอาจมีอยู่ในTable2(ในกรณีของฉันมันเป็นแค่ " 1") และฉันไม่ต้องการคัดลอกอีกครั้งเพราะจะทำให้เกิดข้อผิดพลาด ฉันสามารถเขียนสิ่งนี้: IF NOT EXISTS(SELECT 1 FROM Table2 WHERE Id=1) INSERT INTO Table2 (Id, name) SELECT Id, …

6
ฉันสามารถสร้างฟังก์ชันแบบใช้ครั้งเดียวในสคริปต์หรือขั้นตอนที่จัดเก็บได้หรือไม่?
ใน SQL Server 2005 มีแนวคิดเกี่ยวกับการใช้งานครั้งเดียวหรือฟังก์ชันโลคัลที่ประกาศภายในสคริปต์ SQL หรือ Stored Procedure หรือไม่ ฉันต้องการลบล้างความซับซ้อนบางอย่างในสคริปต์ที่ฉันกำลังเขียน แต่จำเป็นต้องสามารถประกาศฟังก์ชันได้ แค่สงสัย.

17
จะพิมพ์ VARCHAR (MAX) โดยใช้ Print Statement ได้อย่างไร?
ฉันมีรหัสซึ่งคือ: DECLARE @Script VARCHAR(MAX) SELECT @Script = definition FROM manged.sys.all_sql_modules sq where sq.object_id = (SELECT object_id from managed.sys.objects Where type = 'P' and Name = 'usp_gen_data') Declare @Pos int SELECT @pos=CHARINDEX(CHAR(13)+CHAR(10),@script,7500) PRINT SUBSTRING(@Script,1,@Pos) PRINT SUBSTRING(@script,@pos,8000) ความยาวของสคริปต์อยู่ที่ประมาณ 10,000 ตัวอักษรและเนื่องจากฉันใช้คำชี้แจงการพิมพ์ซึ่งสามารถรองรับได้สูงสุด 8000 เท่านั้นดังนั้นฉันจึงใช้คำสั่งพิมพ์สองชุด ปัญหาคือเมื่อฉันมีสคริปต์ซึ่งมีความยาว 18000 อักขระแล้วฉันเคยใช้คำสั่งพิมพ์ 3 ชุด มีวิธีที่ฉันสามารถตั้งค่าจำนวนคำสั่งพิมพ์ขึ้นอยู่กับความยาวของสคริปต์ได้หรือไม่?

7
SQL Server - สร้างสำเนาของตารางฐานข้อมูลและวางไว้ในฐานข้อมูลเดียวกันหรือไม่
ฉันมีตาราง ABC ในฐานข้อมูล DB ฉันต้องการสร้างสำเนาของ ABC ที่มีชื่อ ABC_1, ABC_2, ABC_3 ในฐานข้อมูลเดียวกัน ฉันจะทำได้อย่างไรโดยใช้ Management Studio (ควรเป็น) หรือแบบสอบถาม SQL สำหรับ SQL Server 2008 R2


11
คีย์หลักและดัชนี sql
สมมติว่าฉันมีแถว ID (int) ในฐานข้อมูลที่ตั้งเป็นคีย์หลัก หากฉันค้นหา ID บ่อยๆฉันจำเป็นต้องทำดัชนีด้วยหรือไม่? หรือว่าเป็นคีย์หลักหมายความว่ามีการจัดทำดัชนีแล้ว? เหตุผลที่ฉันถามเป็นเพราะใน MS SQL Server ฉันสามารถสร้างดัชนีบน ID นี้ได้ซึ่งตามที่ฉันระบุไว้คือคีย์หลักของฉัน แก้ไข: คำถามเพิ่มเติม - การจัดทำดัชนีคีย์หลักเพิ่มเติมจะเป็นอันตรายหรือไม่

3
ปัญหาการดำเนินการแปลก ๆ ใน SQL Server: -100 / -100 * 10 = 0
หากคุณดำเนินการผลที่ได้คือSELECT -100/-100*100 หากคุณดำเนินการผลที่ได้คือSELECT (-100/-100)*1010 หากคุณดำเนินการผลที่ได้คือSELECT -100/(-100*10)0 หากคุณดำเนินการผลที่ได้คือSELECT 100/100*1010 สถานะBOL : เมื่อตัวดำเนินการสองตัวในนิพจน์มีระดับความสำคัญของตัวดำเนินการเหมือนกันระบบจะประเมินจากซ้ายไปขวาตามตำแหน่งในนิพจน์ และ Level Operators 1 ~ (Bitwise NOT) 2 * (Multiplication), / (Division), % (Modulus) 3 + (Positive), - (Negative), + (Addition), + (Concatenation), - (Subtraction), &amp; (Bitwise AND), ^ (Bitwise Exclusive OR), | (Bitwise OR) BOL ผิดหรือฉันพลาดอะไรไป? ดูเหมือนว่า-กำลังทำให้ความสำคัญ (ที่คาดหวัง) …

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