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

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

9
จะอัพเดทสองตารางในหนึ่งคำสั่งใน SQL Server 2005 ได้อย่างไร
ฉันต้องการอัปเดตสองตารางในคราวเดียว ฉันจะทำเช่นนั้นใน SQL Server 2005 ได้อย่างไร UPDATE Table1, Table2 SET Table1.LastName='DR. XXXXXX', Table2.WAprrs='start,stop' FROM Table1 T1, Table2 T2 WHERE T1.id = T2.id AND T1.id = '010008'

8
คุณดูข้อความทั้งหมดจาก ntext หรือ nvarchar (สูงสุด) ใน SSMS ได้อย่างไร
คุณดูข้อความทั้งหมดจาก NTEXT หรือ NVARCHAR (สูงสุด) ใน SQL Server Management Studio ได้อย่างไร ตามค่าเริ่มต้นดูเหมือนว่าจะส่งคืนอักขระสองสามร้อยตัวแรกเท่านั้น (255?) แต่บางครั้งฉันต้องการวิธีที่รวดเร็วในการดูฟิลด์ทั้งหมดโดยไม่ต้องเขียนโปรแกรมเพื่อทำ แม้แต่ SSMS 2012 ยังมีปัญหานี้ :(

8
SQL RANK () กับ ROW_NUMBER ()
ฉันสับสนเกี่ยวกับความแตกต่างระหว่างสิ่งเหล่านี้ การรัน SQL ต่อไปนี้ทำให้ฉันได้รับสองชุดตัวระบุผลลัพธ์ ใครช่วยอธิบายความแตกต่างได้มั้ย SELECT ID, [Description], RANK() OVER(PARTITION BY StyleID ORDER BY ID) as 'Rank' FROM SubStyle SELECT ID, [Description], ROW_NUMBER() OVER(PARTITION BY StyleID ORDER BY ID) as 'RowNumber' FROM SubStyle
191 sql  sql-server  tsql 

3
การสร้างดัชนีในตัวแปรตาราง
คุณสามารถสร้างดัชนีบนตัวแปรตารางใน SQL Server 2000 ได้หรือไม่? กล่าวคือ DECLARE @TEMPTABLE TABLE ( [ID] [int] NOT NULL PRIMARY KEY ,[Name] [nvarchar] (255) COLLATE DATABASE_DEFAULT NULL ) ฉันสามารถสร้างดัชนีได้Nameหรือไม่

9
เปลี่ยนความยาวสูงสุดของคอลัมน์ varchar หรือไม่
ฉันพยายามอัปเดตความยาวของคอลัมน์ varchar จาก 255 ตัวอักษรเป็น 500 โดยไม่สูญเสียเนื้อหา ก่อนหน้านี้ฉันทำดร็อปและสร้างตารางใหม่ แต่ฉันไม่เคยเห็นคำสั่งเปลี่ยนแปลงซึ่งเป็นสิ่งที่ฉันเชื่อว่าฉันต้องใช้เพื่อทำสิ่งนี้ ฉันพบเอกสารที่นี่: ALTER TABLE (Transfact-SQL)แต่ฉันไม่สามารถทำหัวหรือก้อยได้ ฉันมีดังต่อไปนี้ (เป็นหลักไม่มีอะไรน่าเสียดาย): alter table [progennet_dev].PROGEN.LE alter column UR_VALUE_3 ฉันจะเข้าใกล้สิ่งนี้ได้อย่างไร มีเอกสารที่ดีกว่าสำหรับคำสั่งนี้หรือไม่ (ฉันได้ค้นหาคำสั่งตัวอย่างบางส่วน แต่ว่างเปล่า)

4
ฉันจะหลีกเลี่ยงเครื่องหมายเปอร์เซ็นต์ใน T-SQL ได้อย่างไร
นี้คำถามนอกจากนี้ยังมีคำตอบแต่มันกล่าวถึง DB2 โดยเฉพาะ ฉันจะค้นหาสตริงโดยใช้LIKEที่มี%สัญลักษณ์เปอร์เซ็นต์อยู่แล้วได้อย่างไร LIKEประกอบการใช้%สัญลักษณ์ที่มีความหมายสัญลักษณ์
188 sql-server  tsql 

6
เปลี่ยนคอลัมน์เพิ่มข้อ จำกัด เริ่มต้น
ฉันมีตารางและหนึ่งในคอลัมน์คือ "วันที่" ประเภทวันที่และเวลา เราตัดสินใจเพิ่มข้อ จำกัด เริ่มต้นในคอลัมน์นั้น Alter table TableName alter column dbo.TableName.Date default getutcdate() แต่สิ่งนี้ทำให้ฉันมีข้อผิดพลาด: ไวยากรณ์ไม่ถูกต้องใกล้กับ '.' ไม่มีใครเห็นอะไรผิดปกติอย่างชัดเจนที่นี่ซึ่งฉันหายไป (นอกจากชื่อคอลัมน์ที่ดีกว่า)


9
เป็นไปได้ไหมที่จะเลือก EXISTS เป็นบิตโดยตรง
ฉันสงสัยว่าเป็นไปได้ไหมที่จะทำสิ่งนี้ (ซึ่งไม่ได้ผล): select cast( (exists(select * from theTable where theColumn like 'theValue%') as bit) ดูเหมือนว่ามันควรจะเป็นไปได้ แต่สิ่งต่าง ๆ ที่ควรจะทำงานใน SQL ไม่ได้;) ฉันเคยเห็นวิธีแก้ปัญหาสำหรับเรื่องนี้ (เลือก 1 ที่ ... มีอยู่ ... ) แต่ดูเหมือนว่าฉันควรจะสามารถทำได้ ส่งผลของฟังก์ชั่นที่มีอยู่เป็นบิตและทำได้ด้วย
186 sql  sql-server  tsql 

14
SQL Server สตริงการแปลงวันที่
ฉันต้องการแปลงสตริงเช่นนี้ '10/15/2008 10:06:32 PM' เป็นค่า DATETIME ที่เทียบเท่าใน SQL Server ใน Oracle ฉันจะพูดแบบนี้: TO_DATE('10/15/2008 10:06:32 PM','MM/DD/YYYY HH:MI:SS AM') คำถามนี้บอกเป็นนัยว่าฉันต้องแยกสตริงออกเป็นหนึ่งในรูปแบบมาตรฐานแล้วแปลงโดยใช้หนึ่งในรหัสเหล่านั้น ที่ดูเหมือนน่าหัวเราะสำหรับการดำเนินการทางโลก มีวิธีที่ง่ายกว่านี้ไหม?

6
ฉันจะใช้พารามิเตอร์ทางเลือกในขั้นตอนการจัดเก็บ T-SQL ได้อย่างไร
ฉันกำลังสร้างกระบวนงานที่เก็บไว้เพื่อทำการค้นหาผ่านตาราง ฉันมีช่องค้นหาที่แตกต่างกันมากมายซึ่งทั้งหมดเป็นตัวเลือก มีวิธีสร้างโพรซีเดอร์ที่เก็บที่จะจัดการกับสิ่งนี้หรือไม่? สมมติว่าฉันมีตารางที่มีสี่ฟิลด์: ID, FirstName, LastName และ Title ฉันสามารถทำสิ่งนี้: CREATE PROCEDURE spDoSearch @FirstName varchar(25) = null, @LastName varchar(25) = null, @Title varchar(25) = null AS BEGIN SELECT ID, FirstName, LastName, Title FROM tblUsers WHERE FirstName = ISNULL(@FirstName, FirstName) AND LastName = ISNULL(@LastName, LastName) AND Title = ISNULL(@Title, Title) END …

7
คุณสามารถสร้างคำสั่งซ้อนด้วย Common สำหรับนิพจน์ตารางทั่วไปได้หรือไม่
WITH y AS ( WITH x AS ( SELECT * FROM MyTable ) SELECT * FROM x ) SELECT * FROM y สิ่งที่ชอบงานนี้หรือไม่? ฉันลองก่อนหน้านี้ แต่ไม่สามารถใช้งานได้

17
วิธีรับรูปแบบเวลาจาก DateTime ใน SQL
ฉันต้องการรับเฉพาะเวลาจากคอลัมน์ DateTime โดยใช้แบบสอบถาม SQL โดยใช้ SQL Server 2005 และ 2008 ผลลัพธ์เริ่มต้น: AttDate == 2011-02-09 13:09:00 2011-02-09 14:10:00 ฉันต้องการผลลัพธ์นี้: AttDate Time == 2011-02-09 13:09:00 13:09 2011-02-09 14:10:00 14:10

14
ใน SQL คุณสามารถ“ จัดกลุ่มตาม” ในช่วงได้อย่างไร?
สมมติว่าฉันมีตารางที่มีคอลัมน์ตัวเลข (ให้เรียกว่า "คะแนน") ฉันต้องการสร้างตารางการนับที่แสดงจำนวนครั้งที่ปรากฏในแต่ละช่วง ตัวอย่างเช่น: ช่วงคะแนน จำนวนครั้ง ------------------------------------- 0-9 | 11 10-19 | 14 20-29 | 3 ... | ... ในตัวอย่างนี้มี 11 แถวที่มีคะแนนอยู่ในช่วง 0 ถึง 9, 14 แถวพร้อมคะแนนในช่วง 10 ถึง 19 และ 3 แถวพร้อมคะแนนในช่วง 20-29 มีวิธีง่าย ๆ ในการตั้งค่านี้หรือไม่? คุณแนะนำเมนูใด?
181 sql  sql-server  tsql 

10
รับค่าต่ำสุดสองค่าใน SQL
ฉันมีสองตัวแปรหนึ่งที่เรียกว่าPaidThisMonthและอื่น ๆ OwedPastเรียกว่า ทั้งคู่เป็นผลลัพธ์ของแบบสอบถามย่อยบางรายการใน SQL ฉันจะเลือกขนาดเล็กกว่าสองค่าและคืนค่าเป็นชื่อได้PaidForPastอย่างไร MINฟังก์ชั่นการทำงานในคอลัมน์ไม่ตัวแปร
180 tsql  sql-server 

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