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

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

30
ฉันจะอัพเดทจาก SELECT ใน SQL Server ได้อย่างไร
ในSQL Serverเป็นไปได้ที่จะINSERTเข้าไปในตารางโดยใช้SELECTคำสั่ง: INSERT INTO Table (col1, col2, col3) SELECT col1, col2, col3 FROM other_table WHERE sql = 'cool' เป็นไปได้ไหมที่จะอัพเดทผ่าน a SELECT? ฉันมีตารางชั่วคราวที่มีค่าและต้องการอัปเดตตารางอื่นโดยใช้ค่าเหล่านั้น บางทีสิ่งนี้: UPDATE Table SET col1, col2 SELECT col1, col2 FROM other_table WHERE sql = 'cool' WHERE Table.id = other_table.id
3694 sql  sql-server  tsql  select 

30
จะตรวจสอบว่ามีคอลัมน์อยู่ในตาราง SQL Server ได้อย่างไร
ฉันต้องการเพิ่มคอลัมน์ที่ระบุหากไม่มีอยู่ ฉันมีสิ่งต่อไปนี้ แต่กลับเป็นเท็จเสมอ: IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'myTableName' AND COLUMN_NAME = 'myColumnName') ฉันจะตรวจสอบว่ามีคอลัมน์อยู่ในตารางของฐานข้อมูล SQL Server ได้อย่างไร



29
แทรกผลลัพธ์ของกระบวนงานที่เก็บไว้ในตารางชั่วคราว
ฉันจะทำSELECT * INTO [temp table] FROM [stored procedure]อย่างไร ไม่ได้FROM [Table]และไม่มีการกำหนด[temp table]? Select ข้อมูลทั้งหมดจาก BusinessLineไปยังtmpBusLineทำงานได้ดี select * into tmpBusLine from BusinessLine ฉันพยายามแบบเดียวกัน แต่ใช้ stored procedureที่คืนค่านั้นไม่เหมือนกัน select * into tmpBusLine from exec getBusinessLineHistory '16 Mar 2009' ข้อความที่ส่งออก: ข่าวสารเกี่ยวกับ 156, ระดับ 15, สถานะ 1, บรรทัด 2 ไวยากรณ์ไม่ถูกต้องใกล้กับคำหลัก 'exec' ฉันได้อ่านหลายตัวอย่างของการสร้างตารางชั่วคราวที่มีโครงสร้างเดียวกันกับขั้นตอนการจัดเก็บผลลัพธ์ที่ทำงานได้ดี แต่มันจะดีที่จะไม่ให้คอลัมน์ใด ๆ

30
ฉันจะทำ IF …แล้วใน SQL SELECT ได้อย่างไร
ถ้าเป็นเช่นนั้นStack Overflow จะไม่ทำงาน : หากคุณเลือก SQL แล้วใช่ไหม ฉันจะดำเนินการIF...THENในSQL SELECTคำสั่งได้อย่างไร ตัวอย่างเช่น: SELECT IF(Obsolete = 'N' OR InStock = 'Y' ? 1 : 0) AS Saleable, * FROM Product

16
ฉันจะทำคำสั่ง UPDATE กับ JOIN ใน SQL Server ได้อย่างไร
ฉันต้องการอัปเดตตารางนี้ในSQL Serverด้วยข้อมูลจากตาราง 'พาเรนต์' ดูด้านล่าง: ตาราง: การขาย id (int) udid (int) assid (int) ตาราง: ud id (int) assid (int) sale.assidud.assidมีค่าที่ถูกต้องเพื่อการปรับปรุง คำถามอะไรที่จะทำเช่นนี้? ฉันกำลังคิดjoinแต่ฉันไม่แน่ใจว่ามันเป็นไปได้

30
ฉันจะลบแถวที่ซ้ำกันได้อย่างไร
วิธีที่ดีที่สุดในการลบแถวที่ซ้ำกันออกจากSQL Serverตารางมีขนาดค่อนข้างใหญ่(เช่น 300,000+ แถว) คืออะไร แน่นอนว่าแถวจะไม่ซ้ำกันอย่างสมบูรณ์เพราะมีอยู่ของRowIDเขตข้อมูลตัวตน MyTable RowID int not null identity(1,1) primary key, Col1 varchar(20) not null, Col2 varchar(2048) not null, Col3 tinyint not null

22
รับขนาดของตารางทั้งหมดในฐานข้อมูล
ฉันได้รับมรดกฐานข้อมูล SQL Server ที่ค่อนข้างใหญ่ ดูเหมือนว่าจะใช้พื้นที่มากเกินกว่าที่ฉันคาดไว้เนื่องจากข้อมูลมีอยู่ มีวิธีง่าย ๆ ในการกำหนดเนื้อที่บนดิสก์ในแต่ละตารางที่ใช้ไปหรือไม่
1271 sql-server  tsql 

13
การเปลี่ยนคอลัมน์: null เป็นไม่ null
ฉันมีตารางที่มีคอลัมน์จำนวนเต็ม null จำนวนหนึ่ง นี้เป็นที่ไม่พึงประสงค์ด้วยเหตุผลหลายประการดังนั้นฉันกำลังมองหาเพื่อปรับปรุง nulls ทั้งหมด 0 NOT NULLและจากนั้นตั้งค่าคอลัมน์เหล่านี้ลง นอกเหนือจากการเปลี่ยนค่า Null เป็น0ข้อมูลจะต้องถูกเก็บรักษาไว้ ฉันกำลังมองหาไวยากรณ์ SQL เฉพาะเพื่อแก้ไขคอลัมน์ (เรียกว่าColumnA) เป็น " not null" สมมติว่าข้อมูลได้รับการปรับปรุงเพื่อไม่ให้มีค่าว่าง ใช้SQL Server 2000

28
ค้นหาตารางทั้งหมดที่มีคอลัมน์พร้อมชื่อที่ระบุ - MS SQL Server
ต้องการปรับปรุงโพสต์นี้หรือไม่? ให้คำตอบโดยละเอียดสำหรับคำถามนี้รวมถึงการอ้างอิงและคำอธิบายว่าทำไมคำตอบของคุณถึงถูกต้อง คำตอบที่ไม่มีรายละเอียดเพียงพออาจแก้ไขหรือลบออกได้ เป็นไปได้หรือไม่ที่จะสืบค้นชื่อตารางที่มีคอลัมน์อยู่ LIKE '%myName%' ?

28
ตรวจสอบว่ามีตารางอยู่ใน SQL Server หรือไม่
ฉันต้องการให้เป็นการอภิปรายขั้นสุดท้ายเกี่ยวกับวิธีตรวจสอบว่ามีตารางอยู่ใน SQL Server 2000/2005 โดยใช้คำสั่ง SQL หรือไม่ เมื่อคุณได้รับคำตอบจาก Google คุณจะได้คำตอบที่แตกต่างกันมากมาย มีวิธีอย่างเป็นทางการ / ย้อนกลับและไปข้างหน้าในการทำมัน? นี่เป็นวิธีที่เป็นไปได้สองวิธี วิธีใดที่หนึ่งในสองคือมาตรฐาน / วิธีที่ดีที่สุดในการทำมัน? วิธีแรก: IF EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE' AND TABLE_NAME='mytablename') SELECT 1 AS res ELSE SELECT 0 AS res; วิธีที่สอง: IF OBJECT_ID (N'mytablename', N'U') IS NOT NULL SELECT 1 AS res …

14
วิธีที่ดีที่สุดในการรับข้อมูลประจำตัวของแถวที่แทรก?
วิธีที่ดีที่สุดในการIDENTITYแทรกแถวคืออะไร ฉันรู้เกี่ยวกับ@@IDENTITYและIDENT_CURRENTและSCOPE_IDENTITYแต่ไม่เข้าใจข้อดีข้อเสียของแต่ละข้อ ใครช่วยอธิบายความแตกต่างได้และเมื่อใดควรใช้แต่ละข้อ
1119 sql  sql-server  tsql 

11
ฉันจะหลีกเลี่ยงคำพูดเดียวใน SQL Server ได้อย่างไร
ฉันกำลังพยายามหาinsertข้อมูลตัวอักษรลงในตารางที่SQL Server9 ข้อความประกอบด้วยเครื่องหมายคำพูดเดี่ยว (') ฉันจะหนีได้อย่างไร ฉันพยายามใช้สองคำพูดเดียว แต่มันทำให้ฉันมีข้อผิดพลาด เช่น. insert into my_table values('hi, my name''s tim.');

13
ฉันควรใช้การสมัครไขว้กับการเข้าร่วมวงใน
วัตถุประสงค์หลักในการใช้CROSS APPLYคืออะไร ฉันได้อ่าน (ผ่านทางโพสต์บนอินเทอร์เน็ต) ที่cross applyมีประสิทธิภาพมากขึ้นเมื่อเลือกผ่านชุดข้อมูลขนาดใหญ่หากคุณแบ่งพาร์ติชัน (เพจมาถึงใจ) ฉันก็รู้ว่าCROSS APPLYไม่จำเป็นต้องมี UDF เป็นตารางขวา ในINNER JOINข้อความค้นหาส่วนใหญ่(ความสัมพันธ์แบบหนึ่งต่อหลายคน) ฉันสามารถเขียนใหม่เพื่อใช้งานCROSS APPLYได้ แต่จะให้แผนการดำเนินการเทียบเท่าเสมอ ทุกคนสามารถให้ฉันเป็นตัวอย่างที่ดีของเมื่อCROSS APPLYสร้างความแตกต่างในกรณีที่INNER JOINจะทำงานได้ดี? แก้ไข: นี่เป็นตัวอย่างเล็กน้อยที่แผนการดำเนินการเหมือนกันทุกประการ (แสดงให้ฉันดูว่าพวกเขาแตกต่างกันที่ไหนและcross applyเร็วกว่า / มีประสิทธิภาพมากขึ้น) create table Company ( companyId int identity(1,1) , companyName varchar(100) , zipcode varchar(10) , constraint PK_Company primary key (companyId) ) GO create table Person ( …

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