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

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

11
คุณจะคัดลอกระเบียนในตาราง SQL ได้อย่างไร แต่จะสลับ id เฉพาะของแถวใหม่
คำถามนี้ใกล้เคียงกับสิ่งที่ฉันต้องการ แต่สถานการณ์ของฉันแตกต่างกันเล็กน้อย ตารางต้นทางและตารางปลายทางเหมือนกันและคีย์หลักคือตัวบ่งชี้เฉพาะ (guid) เมื่อฉันลองสิ่งนี้: insert into MyTable select * from MyTable where uniqueId = @Id; เห็นได้ชัดว่าฉันได้รับการละเมิดข้อ จำกัด ของคีย์หลักเนื่องจากฉันพยายามคัดลอกคีย์หลัก อันที่จริงฉันไม่ต้องการคัดลอกคีย์หลักเลย แต่ฉันต้องการสร้างใหม่ นอกจากนี้ฉันต้องการคัดลอกช่องบางช่องและปล่อยให้ช่องอื่นว่าง เพื่อให้เรื่องซับซ้อนมากขึ้นฉันต้องใช้คีย์หลักของระเบียนต้นฉบับและแทรกลงในฟิลด์อื่นในสำเนา (ฟิลด์ PreviousId) ฉันแน่ใจว่ามีวิธีแก้ปัญหาง่ายๆสำหรับเรื่องนี้ฉันไม่รู้ TSQL มากพอที่จะรู้ว่ามันคืออะไร


2
ไวยากรณ์ที่ไม่ถูกต้องใกล้ ')' การเรียกขั้นตอนการจัดเก็บกับ GETDATE
บางทีฉันอาจจะมีช่วงเวลา 'บ่าย' แต่มีใครอธิบายได้ไหมว่าทำไมฉันถึงได้ ข่าวสารเกี่ยวกับ 102, ระดับ 15, สถานะ 1, บรรทัดที่ 2 ไวยากรณ์ไม่ถูกต้องใกล้ ')' เมื่อทำงาน CREATE PROC DisplayDate (@DateVar DATETIME) AS BEGIN SELECT @DateVar END GO EXEC DisplayDate GETDATE();
121 sql-server  tsql  getdate 

4
คำสั่ง INSERT หลายคำเทียบกับ INSERT เดียวที่มีหลายค่า
ฉันกำลังทำการเปรียบเทียบประสิทธิภาพระหว่างการใช้คำสั่ง 1000 INSERT: INSERT INTO T_TESTS (TestId, FirstName, LastName, Age) VALUES ('6f3f7257-a3d8-4a78-b2e1-c9b767cfe1c1', 'First 0', 'Last 0', 0) INSERT INTO T_TESTS (TestId, FirstName, LastName, Age) VALUES ('32023304-2e55-4768-8e52-1ba589b82c8b', 'First 1', 'Last 1', 1) ... INSERT INTO T_TESTS (TestId, FirstName, LastName, Age) VALUES ('f34d95a7-90b1-4558-be10-6ceacd53e4c4', 'First 999', 'Last 999', 999) .. ตรงกันข้ามโดยใช้คำสั่ง INSERT เดียวที่มีค่า …

13
การจัดรูปแบบตัวเลขโดยการเติมด้วยศูนย์นำหน้าใน SQL Server
เรามีตาราง SQL เก่าที่ SQL Server 2000 ใช้เป็นเวลาเกือบ 10 ปี ในนั้นหมายเลขบัตรพนักงานของเราจะถูกเก็บเป็นchar(6)จากไป000001999999 ตอนนี้ฉันกำลังเขียนเว็บแอปพลิเคชันและต้องการจัดเก็บหมายเลขตราพนักงาน ในตารางใหม่ของฉันฉันอาจจะใช้ตัดสั้นและคัดลอกตารางเก่า แต่ฉันหวังสำหรับการถ่ายโอนข้อมูลที่ดีกว่า, ขนาดที่เล็กกว่า ฯลฯ โดยเพียงแค่การจัดเก็บintค่าจากการ1999999 ใน C # ฉันสามารถจัดรูปแบบintค่าสำหรับหมายเลขตราได้อย่างรวดเร็วโดยใช้ public static string GetBadgeString(int badgeNum) { return string.Format("{0:000000}", badgeNum); // alternate // return string.Format("{0:d6}", badgeNum); } ฉันจะแก้ไขแบบสอบถาม SQL แบบธรรมดานี้เพื่อจัดรูปแบบค่าที่ส่งคืนด้วยได้อย่างไร SELECT EmployeeID FROM dbo.RequestItems WHERE ID=0 ถ้าEmployeeIDเป็น 7135, 007135แบบสอบถามนี้ควรกลับ

4
ค่า "Null" มีขนาดเท่าใดใน SQL Server
ฉันมีตารางขนาดใหญ่ที่มีคอลัมน์ say 10 4 คนยังคงเป็นโมฆะเกือบตลอดเวลา ฉันมีแบบสอบถามที่ใช้ค่า null โดยใช้ขนาดหรือไม่มีขนาดเป็นไบต์ ฉันอ่านบทความสองสามบทความบางบทความกล่าวว่า: http://www.sql-server-citation.com/2009/12/common-mistakes-in-sql-server-part-4.html มีความเข้าใจผิดว่าถ้าเรามีค่า NULL ในตารางจะไม่ใช้พื้นที่จัดเก็บ ความจริงก็คือค่า NULL ใช้พื้นที่ - 2 ไบต์ SQL: การใช้ค่า NULL เทียบกับค่าเริ่มต้น NULLค่าในฐานข้อมูลเป็นค่าระบบที่ใช้เวลาถึงหนึ่งไบต์ในการจัดเก็บและแสดงให้เห็นว่าไม่มีค่าเมื่อเทียบกับพื้นที่หรือศูนย์หรือค่าเริ่มต้นอื่น ๆ คุณช่วยแนะนำฉันเกี่ยวกับขนาดที่ใช้ค่า null ได้ไหม



6
รับผลลัพธ์ของไดนามิก SQL เป็นตัวแปรสำหรับ sql-server
การเรียกใช้ไดนามิก SQL ดังต่อไปนี้ใน Stored Procedure: DECLARE @sqlCommand nvarchar(1000) DECLARE @city varchar(75) SET @city = 'London' SET @sqlCommand = 'SELECT COUNT(*) FROM customers WHERE City = @city' EXECUTE sp_executesql @sqlCommand, N'@city nvarchar(75)', @city = @city ฉันจะใช้ค่าคอลัมน์ count (*) เป็นค่าส่งคืนใน SP ได้อย่างไร

14
ฉันจะค้นหาข้อ จำกัด เริ่มต้นโดยใช้ INFORMATION_SCHEMA ได้อย่างไร
ฉันกำลังพยายามทดสอบว่ามีข้อ จำกัด เริ่มต้นหรือไม่ ฉันไม่ต้องการใช้ตาราง sysobjects แต่เป็น INFORMATION_SCHEMA มาตรฐานมากกว่า ฉันเคยใช้สิ่งนี้เพื่อตรวจสอบตารางและข้อ จำกัด ของคีย์หลักมาก่อน แต่ฉันไม่เห็นข้อ จำกัด เริ่มต้นเลย พวกเขาไม่อยู่ที่นั่น? (ฉันใช้ MS SQL Server 2000) แก้ไข: ฉันกำลังมองหาชื่อของข้อ จำกัด

9
แยกวิเคราะห์ JSON ใน TSQL
มันเป็นไปได้ที่จะแยกJSONในTSQL? ฉันไม่ได้ตั้งใจจะสร้างJSONสตริง แต่ฉันต้องการแยกวิเคราะห์JSONสตริงที่ส่งผ่านเป็นไฟล์parameter.
115 sql-server  tsql  json 

4
เวลาวันที่ T-SQL ปัดเศษเป็นนาทีที่ใกล้ที่สุดและชั่วโมงที่ใกล้ที่สุดโดยใช้ฟังก์ชัน
ใน SQL server 2008 ฉันต้องการให้คอลัมน์วันที่และเวลาปัดเศษเป็นชั่วโมงที่ใกล้ที่สุดและนาทีที่ใกล้ที่สุดโดยเฉพาะอย่างยิ่งกับฟังก์ชันที่มีอยู่ในปี 2008 สำหรับค่าคอลัมน์นี้2007-09-22 15:07:38.850ผลลัพธ์จะมีลักษณะดังนี้: 2007-09-22 15:08 -- nearest minute 2007-09-22 15 -- nearest hour

17
ฟังก์ชัน PadLeft ใน T-SQL
ฉันมีตาราง A ต่อไปนี้: id ---- 1 2 12 123 1234 ฉันต้องการวางค่าทางซ้ายidด้วยศูนย์: id ---- 0001 0002 0012 0123 1234 ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร?
113 string  tsql 

11
ประเภทข้อมูลสำหรับจัดเก็บที่อยู่ IP ใน SQL Server
ฉันควรเลือกประเภทข้อมูลใดเพื่อจัดเก็บที่อยู่ IP ใน SQL Server การเลือกประเภทข้อมูลที่ถูกต้องจะง่ายพอที่จะกรองตามที่อยู่ IP หรือไม่?


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