@madry_i_mieciutki: panie spokojnie .csv ma nazwy column... a i wygląda lepiej niż to co zaprezentowałeś.

Proszę tutaj:

--create table WykopTable (
--column1 varchar(255),
--column2 varchar(255)
--);

--insert into WykopTable (column1,column2)
--Values
--('A','AB|BC|DE'),
--('B','XD|DD');

SELECT t2.column1, s.value FROM dbo.wykoptable t CROSS APPLY STRING_SPLIT(t.column2, '|') s
cross join wykoptable t2
where t.column1 = t2.column1

Output:
column1 value
A AB
A BC
A DE
B XD
B DD
Los sprawił, że będę dużo rozmawiał z programistami i pomyślałem, że to byłaby dobra okazja na spróbowanie samemu. Produkt jest rozbudowany i dopasowywany do klientów, napisany w ASP, .net i elementach Javy. W moim obszarze podobno ma być SQL najbardziej przydatny (T-SQL), więc chciałbym go poznać. Wcześniej planowałem zacząć od Pythona (kiedyś coś robiłem trochę w C++ i PHP), bo jest często polecany, ale teraz jak już wiem co jest istotne, to
@FrasierCrane: IMHO #!$%@? zestawy egzaminacyjne. Najpierw podstawy RDMS (relacyjne bazy danych) bez względu na typ bazy (podstawy oparte o ANSI SQL 92). jak wustarczy to luz, a jak chcesz masteroeac to od razu ładuj się w Itzika Ben Ghana z "quering t-sqł". Resztę, łącznie z egzaminami MS olej bo to gówno leżące gdzieś po środku. Albo pottzebujesz podstawy (niezależne od typu SQL, czy T-Sql, czy pl-sql, czy inne nie ma znaczenia)
Chciałbym nauczyć się #tsql ale niestety mam tylko służbowego lapka no i wszędzie mam nalozone blokady. Jest możliwość nauki tego języka online? Może w #azure ? Docelowo chciałbym również nauczyć się #ssrs #ssis #ssas
Ogarniam modele tabelaryczne #dax , ciągle próbuje swoich sił z #r no i chciałbym ogolnie iść w rozwiązania #microsoft wołam @#!$%@? bo siedzisz w temacie ;) #bazydanych #sqlserver #sql
Mirasy, nawiązując do moich wcześniejszych wpisów:

https://www.wykop.pl/wpis/22437263/mirasy-postanowilem-przejsc-na-b2b-i-zrezygnowac-z/
https://www.wykop.pl/wpis/22916783/mirasy-jakis-czas-temu-wrzucilem-wpis-odnosnie-swo/

Możecie tutaj zadawać pytania, postaram się odpowiedzieć najlepiej jak potrafię na Wasze pytania :) Odpowiadał będę sukcesywnie na pytania dzisiaj, jutro i pojutrze - mam trochę różnych spraw na głowie ostatnio, więc jednym tchem na wszystko nie odpowiem ;)

#ama #sqlserver #sql #tsql #etl #businessintelligence #bi #bideveloper #microsoft #programowanie #sqldeveloper #it #programista15k #ssis #ssas #ssrs - wybaczcie dużą ilość tagów, ale chciałbym zawołać wszystkich
@kuta_senator: jakie masz wykształcenie? Ja mam posade że na te chwile dostaje dane z hurtowni i robię raporty Excel, VBA. Docelowo uczyć się będę SQL i sam te dane z hurtowni sobie wyciągał. I czy z takiego poziomu bazowego da radę się rozwijać w kierunku takim jak Ty? Do tego prócz SQL chce się uczyć w własnym zakresie PowerBi i R
@pepepanpatryk: Najłatwiej i najszybciej użyć SqlBulkCopy.

string csDestination = "connectionString do bazy";

using (SqlConnection destinationConnection = new SqlConnection(csDestination))
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(destinationConnection))
{
bulkCopy.DestinationTableName = "NAZWATABELIWBAZIEDANYCH";
bulkCopy.WriteToServer(obiektDataTableZDanymiWForwacieOdwzorujacymTwojaTabele);
}

Milion wierszy powinno klilkanaście-kilkadziesiąt sekund zająć.
@Rokuto: Ja z kolei znalazłem to link .
Paczka w SSISie Transfer Database Task do połączenia z db używa tylko SMO Connection Manager, który to z kolei do transferu od wersji SQL Server 2012 używa SqlBulkCopy.
Może to całkowicie i tylko i wyłącznie zależy od metody jaką wybierzesz przy połączeniu do bazy danych w Import/Export Wizard.
#tsql #sql #programowanie
chcę zrobić trigera który doda do siebie place podstawową i dodatkową dodanego pracownika. Zrobiłem coś takiego i wywala mi błąd

Msg 8114, Level 16, State 5, Procedure wynikZarobkow, Line 36

Error converting data type varchar to numeric.


dodam że kolumny z płacami są decimalami

jak mam go zrobić poprawnie?

create trigger wynikZarobkow
on pracownicy
for insert
as
declare @wynik decimal
select @wynik = placa_pod + isnull(placa_dod, 0) from inserted
#naukaprogramowania #tsql #sql

Tworze taką tabele

create table OSOBA

(

IDOSOBA int primary key,

NAZWISKO VARCHAR(50),

IMIE VARCHAR,

DATAURODZENIA DATE NOT NULL,

PLEC CHAR(1)

)


później tworze taką

create table STUDENT

(

IDOSOBA int ,

NRINDEKSU char(10),

DATAREKRUTACJI DATETIME not null

)


następnie chcę dodać klucz obcy w tabeli student na kolumnie id osoba który ma się odnosić do tabeli osoba na kolumne id osoba

alter table STUDENT

add constrain
Chcę przywrócić wartości z backupu dla jednej kolumny, jednej tabeli. Bakup przywróciłem do bazy testowej i chcę z niej zrobić update. Jak powinno wyglądać zapytanie? Mam coś takiego, ale nie działa.

UPDATE [baza].[tabela]
SET [baza].[tabela].[kolumna] = [bazaTest].[tabela].[kolumna]
FROM [baza].[tabela] a
INNER JOIN [baza
Test].[tabela] b
ON b.TwrJTwrID = a.TwrJTwrID
WHERE a.kolumna LIKE 'warunek'

#sql #tsql #bazydanych #noob
Mam tabelę ProdSkladniki jak poniżej:
PdSPdrId|PdSTwrId|PdSIlosc
14925 |258 |0.0100
14925 |14527 |0.0100
14925 |233 |0.0150
14925 |14525 |0.0150
14925 |262 |0.0250
14925 |14526 |0.0250
14925 |297 |0.0500
14925 |935 |0.0500
14925 |14524 |0.0500
14925 |220 |0.1000
14925 |263 |0.1500
15552 |14527 |0.0250
15552 |275 |0.0750
15552 |14526 |0.1000
15552 |4601 |0.1250
15552 |5234 |0.1750

Potem robię takiego inserta:
INSERT INTO @masy_skladnika (nr, masa)
SELECT pds
pdrid, pdsilosc
FROM
@Bodhistawa:
no tak ( ͡° ͜ʖ ͡°)

INSERT INTO masy_skladnika (nr, masa, maxilosc)
select ps1.pdspdrid, ps1.pdsilosc, ps2.maxilosc
from
(
SELECT pdspdrid, pdsilosc
FROM ProdSkladniki
where ProdSkladniki.PdS_TwrId = 14526
) ps1
left join
(
select pdspdrid, max(pdsilosc) as maxilosc from ProdSkladniki group by pdspdrid
) ps2 on ps1.pdsprid=ps2.pdspdrid
@HalinaMamZawal: @boostasio: od wersji 2016 mssql wspiera JSON.
O ile dobrze rozumiem szukasz pola, a nie wartości tego pola. Do głowy na ten moment przychodzi mi tylko:
IF (
SELECT jsonValue(column, '$.adrespola')
FROM tabela) IS NOT NULL
PRINT 'istnieje'
ELSE PRINT 'nie istnieje'

w wersjach poniżej 2016 może przeszukaj tego stringa like'iem '%"nazwa_pola":%' albo odpowiadającym temu regexowi.
@Damian1998: Książek nie polecasz, ćwiczeń nie polecasz. Na słów brak. Najgorszy rodzaj samouctwa jaki istnieje, bo skoro raz udało ci się rozwiązać problem podczas kodowania to myślisz, że wiesz jak to zrobić dobrze.

"Tylko" kodowanie z dokumentacją jest tak samo szkodliwe jak tylko czytanie książek lub tylko rozwiązywanie ćwiczeń, po prostu szkodliwość objawia się później.

@fake9406:
Na początek:
https://www.amazon.com/T-SQL-Fundamentals-3rd-Itzik-Ben-Gan/dp/150930200X/

Później:
https://www.amazon.com/T-SQL-Querying-Developer-Reference-Ben-Gan/dp/0735685045/
@fake9406: Ja polecam training kit do 70-461.

@Damian1998: Można skleić byle jaką aplikację i "będzie działać" ale problem jest w tym że bazy danych uwielbiają udawać że działają. Pisanie rozbudowanych zapytań opiera się na ciężkiej teorii popartej długą praktyką i eksperymentami.
#tsql #sql #naukaprogramowania
chcę odjąć sumę liczb aktualnego miesiąca z tabeli przychody od sumy liczb aktualnego miesiąca z tabeli wydatki. Co zrobiłem źle?

select sum(p.kwota) - sum(w.kwota)
from przychody p join wydatki w
on DATEPART(month, (p.data_przychodu)) = DATEPART(month, (w.data_zakupu))
where DATEPART(month, (p.data_przychodu)) = DATEPART(month, (GETDATE()))
and DATEPART(month, (w.data_zakupu)) = DATEPART(month, (GETDATE()))
1. Jeśli masz różne lata to będziesz miał złączenie np. 01.2015 do 01.2016.
2. I tak robisz złączenie na tych samych miesiącach - nie ma potrzeby zatem umieszczać dwóch warunków w WHERE
3. Nie zręczniej przez WHERE zamiast JOIN w tym przypadku?
#tsql #sql #naukaprogramowania

Mam 3 tabele - bilans_miesiecy, wydatki i przychody. Bilans miesięcy ma w kolumnie miesiace 12 wierszy w których kolejno są cyfry od 1 do 12. Z tabeli wydatki i przychody chcę wyciągnąć z kolumny kwota sumę kwot dla poszczególnych miesięcy. Nie wiem czemu w sumie kwoty z tabeli "przychody" w miesiącu 9 wyciąga mi 300.00 skoro tam jest 50. Pozostałe sumy liczy dobrze.
kod
ugotowanykamien - #tsql #SQL #naukaprogramowania

Mam 3 tabele - bilansmiesiecy, wy...

źródło: comment_GkVWynhPMLFN6cdIshpw03wrtmhvKwYU.jpg

Pobierz
Witajcie, byłbym bardzo wdzięczny mirkowi, który podpowie mi w jaki sposób można nadać wartośc rekordu z tabeli używając przyciska w formularzu drugiej tabeli. Mam przykladowo tabele 'zapis na sektory' oraz tabele 'sektory' i chce z poziomu formularza tabeli 'zapis na sektory' nadac wartosc pewnego pola w tabeli 'sektory'. Zaczynam zabawę z tym i domyślam się, że to coś prostego, ale przeszukałem już sporo. Działam na #access 2010. #vba #tsql #sql