В SQL Server возможно использовать insert
в таблице, используя оператор SELECT
:
INSERT INTO Table (col1, col2, col3)
SELECT col1, col2, col3
FROM other_table
WHERE sql = 'cool'
Возможно ли также обновление через SELECT
? У меня есть временная таблица,
Как можно добавить столбец со значением по умолчанию в существующую таблицу в SQL Server 2000 /SQL Server 2005 ?
Мне нужно добавить определенный столбец, если он не существует. У меня есть что-то вроде следующего, но всегда возвращает false:
IF EXISTS(SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'myTableName'
AND COLUMN_NAME = 'myColumnName')
Как проверить, существует ли столбец в таблице базы
...Рассмотрим таблицу базы данных, содержащую имена, с тремя строками:
Peter
Paul
Mary
Есть ли простой способ превратить это в одну строку из Peter, Paul, Mary
?
SELECT GETDATE()
Возврат: 2008-09-22 15:24:13.790
Я хочу эту часть даты без временной части: 2008-09-22 00:00:00.000
Как я могу это получить?
У меня есть несколько наборов данных для вставки сразу, скажем, 4 строки.
Моя таблица имеет три столбца: Person
, Id
и Office
.
INSERT INTO MyTable VALUES ("John", 123, "Lloyds Office");
INSERT INTO MyTable VALUES ("Jane", 124, "Lloyds Office");
INSERT
... Как мне сделать SELECT * INTO [temp table] FROM [stored procedure]
? Не FROM [Table]
и без определения [temp table]
?
Select
все данные от BusinessLine
до tmpBusLine
прекрасно работают.
select *
into tmpBusLine
from BusinessLine
Я пытаюсь сделать то
...Чем отличаются LEFT JOIN
от LEFT OUTER JOIN
?
Как выполнить команду IF...THEN
в SQL SELECT
?
Например:
SELECT IF(Obsolete = 'N' OR InStock = 'Y' ? 1 : 0) AS Saleable, * FROM Product
Это просто, что nvarchar
поддерживает многобайтовые символы? Если это так, есть ли смысл в использовании varchars
, кроме проблем с хранилищем?
Каков наилучший способ удалить дублирующиеся строки из довольно большой таблицы SQL Server
(т.е. е. 300 000+ строк)
Строки, конечно, не будут идеальными дубликатами из-за существования поля идентификатора RowID
.
MyTable
RowID int not null identity(1,1) primary key,
Col1 varchar(20) not
... У меня есть таблица, которая имеет несколько обнуляемых целочисленных столбцов. Это нежелательно по нескольким причинам, поэтому я собираюсь обновить все нули до 0, а затем установить для этих столбцов значение NOT NULL
. Помимо изменения пустых значений на 0
,
Как лучше всего получить IDENTITY
вставленного ряда?
Я знаю о @@IDENTITY
и IDENT_CURRENT
и SCOPE_IDENTITY
, но не понимаю плюсы и минусы, связанные с каждым.
Может кто-нибудь объяснить, пожалуйста, различия и когда я должен использовать каждый?
Я хотел бы, чтобы это было окончательным обсуждением того, как проверить, существует ли таблица в SQL Server 2000/2005 с помощью оператора SQL.
Когда вы Google для ответа, вы получите так много разных ответов. Есть ли официальный / обратный и прямой
...Можно ли запрашивать имена таблиц, которые содержат столбцы, являющиеся
LIKE '%myName%'
?
У меня ограниченный доступ к БД, и я использовал только БД в качестве прикладного программиста. Я хочу знать о Clustered
и Non clustered indexes
. Я погуглил и нашел:
...Кластерный индекс - это особый тип индекса, который переупорядочивает способ записи
Оба этих соединения дадут мне одинаковые результаты:
SELECT * FROM table JOIN otherTable ON table.ID = otherTable.FK
против
SELECT * FROM table INNER JOIN otherTable ON table.ID = otherTable.FK
Есть ли разница между утверждениями в исполнении или иным образом?
Отличается
...Какова основная цель использования CROSS APPLY ?
Я прочитал (смутно, через сообщения в Интернете), что cross apply
может быть более эффективным при выборе больших наборов данных, если вы разделяете. (Пейджинг приходит на ум)
Я также знаю, что CROSS APPLY
не
У меня есть база данных с account numbers
и card numbers
. Я сопоставляю их с файлом на update
номера карт на номер учетной записи, так что я работаю только с номерами счетов.
Я создал представление, связывающее таблицу с базой
...Каков наилучший способ получить имена всех таблиц в конкретной базе данных на SQL Server?