sqlschool.gr logo

search results

searching on site content

17 Jun 2020

The OUTPUT Clause in DML statements

Σε αυτό το άρθρο δείχνουμε το πως μπορούμε να εκμεταλευτούμε το OUTPUT clause στα DML statements

14 Jan 2022

Monitor Active SQL Agent T-SQL Jobs

Η εκτέλεση προγραμματισμένων εργασιών με την χρήση του SQL Agent είναι κάτι που σπάνια δεν θα βρει κάποιος σε ένα instance και πρέπει να κάνουμε monitor, management & troubleshooting για αυτές. Έχουμε αρκετά εργαλεία στα χέρια μας αλλά υπάρχουν και αυτές οι περιπτώσεις που χρειάζεται το κάτι παραπάνω για να κάνουμε monitor, management & troubleshooting. Μία από αυτές τι περιπτώσεις περιγράφω στο άρθρο μου αυτό.

12 Jun 2020

The NULLIF expression

Σε αυτό το άρθρο ασχολούμαστε με το NULLIF expression, το οποίο αν χρησιμοποιηθεί κατάλληλα, μπορεί να δώσει πολλαπλά κέρδη τόσο στην απλότητα του query όσο και στην απόδοση του. Υποστηρίζεται σε SQL Server, Azure SQL Database, Azure Synapse Analytics (SQL DW) και Parallel Data Warehouse.

16 Mar 2021

GREATEST() and LEAST() functions in Azure SQL Database

Μια απαίτηση αρκετών χρόνων υλοποιήθηκε μερικώς στον SQL Server καθώς αυτή την στιγμή είναι μόνο διαθέσιμη στις Azure SQL Databases και αφορά δύο T-SQL functions που υπάρχουν σε άλλα RDBMS εδώ και χρόνια.

28 May 2020

Update Top(N) in SQL Server and Azure SQL Database

Σε αυτό το άρθρο δείχνουμε πως μπορούμε να κάνουμε UPDATE TOP(N) σε SQL Server & Azure SQL Database.

14 Oct 2014

Using T-SQL commands to read SQL log files

Ένας DBA στην καθημερινότητα του χρειάζεται να διαβάζει αρκετές φορές τα logs που ο SQL Server παράγει είτε για το ίδιο το SQL Server service είτε για το SQL Server Agent service. Φυσικά και υπάρχει γραφικό περιβάλλον που μπορεί εύκολα κανείς να κάνει αυτό. Υπάρχει όμως και μη γραφικός τρόπος που διευκολύνει περισσότερο, κατά την γνώμη μου, στην ανάγνωση των logs ιδιαίτερα όταν αυτά έχουν μεγάλο όγκο από καταχωρήσεις.

04 Jul 2012

Writing T-SQL using formatting standards, code layout and beautification

Σαν παλαιός developer έχω νιώσει αρκετά καλά στο πετσί μου ότι ο όμορφα γραμμένος κώδικας όσο χάλια και αν είναι πάντα βοηθάει στην ανάγνωση του με αποτέλεσμα να εξυπηρετεί αρκετά τόσο στο debugging αυτού όσο και στο refactoring και extension. Αρκετές φορές ακόμα έχω δεχθεί ερώτηση για αυτό τόσο στον χώρο εργασίας μου όσο και κατά την διάρκεια των σεμιναρίων που κάνω.

30 Mar 2013

Using T-SQL

Μια εξάωρη παρουσίαση που δείχνει σχεδόν όλα όσα θέλει κάποιος να μάθει για την χρήση της T-SQL. Σε αυτή καλύπτονται θέματα όπως Introduction to Microsoft SQL Server 2012,SQL Server Management Studio, Introduction to T-SQL Querying, SELECT Statements / Queries, Querying Multiple Tables, Sorting and Filtering Data, Grouping and Aggregating Data, Using Subqueries, Using Views, Table Value Functions and Table Expressions, Using Set Operators, Using Window Functions, Stored Procedures, What’s New in SQL Server 2012

17 Feb 2015

Getting Started : Writing T-SQL (Part 1)

Αυτή η σειρά από posts, έχει σκοπό να βοηθήσει κάποιον να κάνει τα πρώτα του βήματα στην χρήση του Microsoft SQL Server και να κάνει μια γνωριμία με την Τransact-SQL.

14 Jun 2020

The QUOTENAME and CONCAT_WS string functions

Αν και είναι ένα μικρό άρθρο αυτό, εντούτοις θεώρησα ότι πρέπει να το γράψω καθώς βλέπω ότι κάποιοι ταλαιπωρούνται αδίκως όταν γράφουν κώδικα ειδικά όταν αυτός πρέπει να περιέχει object names πχ tables, fields, views, stored procedures.

06 May 2019

Create re-usable temp table using dynamic T-SQL

Δεν είναι λίγες οι φορές που χρειάζεται να δημιουργήσουμε ένα temp table δυναμικά καθώς δεν γνωρίζουμε εξ’ αρχής την δομή του είτε σε μια stored procedure είτε σε ένα script.

07 Oct 2017

SOME T-SQL IMPLICIT CASTING TRAPS

Είναι γνωστό ότι τα implicit casts κρύβουν κινδύνους και ειδικά μέσα στα queries μας τα αποφεύγουμε. Παρόλα αυτά είναι καλό να ξέρουμε πως συμπεριφέρονται στον SQL Server και τι να περιμένουμε στο αποτέλεσμα.

24 Nov 2015

T-SQL PIVOT

Με την βοήθεια του τελεστή pivot μπορούμε να ομαδοποιήσουμε δεδομένα και να κάνουμε aggregations, παρουσιάζοντας το αποτέλεσμα που προκύπτει για κάθε ομάδα σε διαφορετική στήλη.

13 Sep 2015

Getting Started: Writing T-SQL (Part 5)

Σε αυτό το post θα δούμε τον operator join. Με αυτόν θα μπορέσουμε να συνδυάσουμε πληροφορίες από περισσότερους του ενός πίνακες στο result set μας.

13 Jun 2015

Getting Started: Writing T-SQL (Part 4)

Σε συνέχεια του προηγούμενου post, θα δούμε τα Aggregate Functions που μπορούμε να χρησιμοποιήσουμε, καθώς και τα GROUP BY και HAVING clauses. Επιπλέον θα δούμε τα φίλτρα TOP και OFFSET – FETCH.

17 May 2015

Getting Started : Writing T-SQL (Part 3)

Σε αυτό το μέρος της σειράς των posts μας για εισαγωγή στην T-SQL θα ασχοληθούμε με το SELECT statement

26 Apr 2015

Getting Started : Writing T-SQL (Part 2)

Σε αυτό το post θα βάλουμε δεδομένα στους πίνακες που δημιουργήσαμε στο 1o μέρος και θα δούμε τα DML statements.

18 Jul 2014

Add/Remove Leading/Trailing Zero with T-SQL and SSIS

Στο περιβάλλον εργασίας μου υπάρχουν αρκετές διαδικασίες που ανταλλάσσουν δεδομένα μεταξύ ετερογενών συστημάτων. Κάποια από αυτά είναι legacy και ενώ έχει γίνει μια φανταστική δουλειά να μιλάνε τα συστήματα αυτά μέσω services, εντούτοις υπάρχουν κάποιες μικρές ιδιαιτερότητες. Μια από αυτές είναι με τα νούμερα που τα legacy θέλουν συγκεκριμένο πλήθος ψηφίων με leading zero και φυσικά δίνουν τα αποτελέσματα με αυτό το format.

28 May 2014

PARSENAME T-SQL Function

Σαν DBA αλλά και DB Developer έχεις την ανάγκη να διαβάσεις metadata για να κάνεις την δουλειά σου. Αρκετές είναι οι φορές που τo όνομα του object που παίρνεις είναι full qualified name δηλαδή περιέχει server, database, schema, και φυσικά το όνομα του και ανά περίπτωση θέλεις να πάρεις κάποιο από αυτά. Μην ψάχνεις να δεις πως θα τα κάνεις…

08 Nov 2012

Export data to Excel File using pure T-SQL (New Version)

Πριν από τρία χρόνια είχα γράψει ένα post με αυτό το θέμα. Το συγκεκριμένο post είναι από τα δημοφιλή θα έλεγα και έχει αρκετούς, από όσο γνωρίζω που έχουν χρησιμοποιήσει την συγκεκριμένη πρόταση.Παρόλα αυτά όμως το παλαιό post χρειάζεται ένα refactoring καθώς από τότε που γράφτηκε μέχρι σήμερα έχουν μεσολαβήσει αρκετές αλλαγές που σε αρκετές περιπτώσεις δεν θα δουλέψει. Για αυτό σε αυτό δίνω μια νέα βελτιωμένη εκδοχή.

03 Sep 2012

T-SQL Split Function

Αν και πιστεύω ότι αρκετοί θα έχετε υλοποιήσει κάτι τέτοιο εντούτοις σας παραδίδω και την δικιά μου εκδοχή που κάνει parse ένα string με delimiters και επιστρέφει ένα πίνακα με τα αποτελέσματα της εκτέλεσης.

29 May 2012

Another Example Why you must avoid Implicit Conversions in T-SQL

Αν και δεν είμαι αρκετά σίγουρος ότι όλοι έχουν καταλάβει ότι θα πρέπει να αποφεύγουν όπως ο διάολος το λιβάνι τα implicit conversions εντούτοις αυτό είναι κάτι γνωστό και πηγή δεινών αν αυτό γίνεται στην T-SQL. Υπάρχουν αρκετά άρθρα που το αναφέρουν αυτό και με αυτό το post θα συμπληρώσω και εγώ ακόμα ένα παράδειγμα με σκοπό μήπως και κάποιοι συνετιστούν και σταματήσουν να το κάνουν.

06 Mar 2011

T-SQL Challenge #1:Different Level Ordering in Hierarchy

Πριν από μερικές μέρες μια συνάδελφος ήρθε με το εξής πρόβλημα, ήθελε να δείξει κάποια δεδομένα σε ένα treeview control σε ένα web page. Στην ουσία ήταν μια ιεραρχία που από την δομή του πίνακα έβγαινε αρκετά εύκολα με ένα order by clause. Όμως δεν ήταν τόσο απλά τα πράγματα, ήθελε να υπάρχει ταξινόμηση ανά επίπεδο ιεραρχίας το οποίο ορίζονταν από ένα άλλο πεδίο. Για να εξηγήσουμε καλύτερα την πρόκληση αυτή ας έρθουμε να δούμε το πώς ήταν τα δεδομένα της...

19 Aug 2009

Export data to Excel File using pure T-SQL

O SQL Server έχει αρκετά εργαλεία για να κάνεις export & import data. Από τα απλά T-SQL BULK INSET ή το κλασσικό BCP μέχρι τα DTS (Data Transformation Services) και σήμερα τα SSIS ( SQL Server Integration Services). Όμως υπάρχουν αρκετές περιπτώσεις που δεν θα ήθελες να εμπλακείς με αυτά. Ένα σενάριο το οποίο κάποια στιγμή σε ένα project μου έτυχε ήταν η απαίτηση να πατάει ο χρήστης ένα κουμπί και να γίνονται τα δεδομένα export σε Excel αρχείο. Για να δούμε λοιπόν την υλοποίηση του ...

20 Mar 2011

Identify slow running queries with SQL Profiler trace data

Με αφορμή το τελευταίο μου SQL Server Saturday Night που σαν θέμα είχε τον SQL Server Profiler και μπορείτε να το δείτε εδώ και στο οποίο αναφέρθηκα στο συγκεκριμένο θέμα αποφάσισα να γράψω το συγκεκριμένο ώστε να δώσω περισσότερες λεπτομέρειες. Όπως ανέφερα και στη παρουσίαση μου το ποια events θα διαλέξει κάνεις έχει περισσότερο να κάνει με την εμπειρία που έχει αλλά και την ικανότητα με αυτά να εντοπίσει το εν λόγω πρόβλημα.

31 Aug 2022

Trim Functions Improvements - SQL Server 2022 - What's New

Episode #72 with Antonios Chatzipavlis

15 Jul 2018

The Plan Cache Internals and Management

Κάθε φορά που στέλνουμε ένα Transact SQL statement να εκτελεστεί σε ένα SQL Server instance είναι γνωστό ότι ένα από τα βασικά components του SQL Server Database Engine αναλαμβάνει την διαδικασία αυτή και αυτό δεν είναι άλλο από τον Query Optimizer. Αυτός αναλαμβάνει να μετατρέψει το δεδομένο T-SQL statement σε μια σειρά από logical operators οι οποίοι θα χρησιμοποιηθούν για την εκπλήρωση της εκτέλεσης του T-SQL statement. Αυτή η σειρά των logical operators είναι γνωστή σαν Query Execution Plan.

17 Apr 2018

Calling Http endpoints in T-SQL using CURL extension

SQL Server Database Engine don’t have built-in functions that would enable you to send information to some API using http protocol. If you would need to call some REST endpoint or a web hook from the T-SQL code, you would need to use WebClient or WebRequest classes from .Net framework and expose them as T-SQL function or procedure. In this post you will see how to create that kind of extension.

21 Mar 2020

Exploring T-SQL Anti-Patterns

Η έκρηξη της ανάγκης επεξεργασίας δεδομένων έχει οδηγήσει ακόμα περισσότερους στο να γράφουν queries. Σε αυτό το SQL Satruday Night θα δείξουμε ποιά είναι anti-patterns και που δημιουργούν περισσότερα προβλήματα από αυτά που υποτίθεται ότι θα λύσουν

11 Mar 2013

Parameter Sniffing – What is and How to deal with it

Episode #2 with Antonios Chatzipavlis

20 Mar 2016

Your Boss asks you to give him a report (Using T-SQL by example)

Στο session αυτό δείχνουμε με ζωντανά παραδείγματα πως μπορούμε να χρησιμοποιήσουμε τις δυνατότητες της T-SQL ώστε να καλύψουμε τις ανάγκες που θέλει το αφεντικό.

14 Mar 2010

Lesson: Backup/Restore in SQL Server 2008

Βλέποντας μέσα από το forum μας διάφορες συζητήσεις σχετικά με το θέμα του μεγέθους του transaction log (T-Log) διαπίστωσα ότι υπάρχει ένα θολό τοπίο γύρω από το θέμα disaster recovery (backup - restore) πάνω στον SQL Server. Πήρα την απόφαση να γράψω για αυτό το θέμα ώστε να το ξεκαθαρίσω μια και καλή διότι είναι τόσο απλό και τόσο δυνατό που είναι αμαρτία από το Θεό να παιδεύεται ο κόσμος.

02 Jan 2014

SQL Server Services Ports that each DBA and Developer must know

Καλή Χρονιά με υγεία πάντα σε όλες και όλους. Πρώτο post για την χρονιά αυτή και θα ξεκινήσω με κάτι απλό που πρέπει να γνωρίζουν όλοι, είτε είναι DBAs είτε είναι Developers. Ο SQL Server είναι στην ουσία ένα εργοστάσιο από services. Κάθε ένα από αυτά όμως έχει την δικό του "ταχυδρομικό κωδικό". Αυτός δεν είναι άλλος από την πόρτα TCP/UDP έτσι σας δίνω μια λίστα αυτών με τις πόρτες που το κάθε ένα χρησιμοποιεί και είναι απαραίτητο να γνωρίζετε.

28 Oct 2009

Γιατί πρέπει να χρησιμοποιώ Stored Procedures

Χαίρετε, καιρό είχατε να με ακούσετε ε; Δυστυχώς αυτά συμβαίνουν όταν αλλάζεις δουλειά. Όμως σιγά σιγά βρίσκω τα νέα βήματα μου οπότε επανέρχομαι δριμύτερος. Σήμερα θέλω να σας κουράσω με κάτι που δεν είναι στο administration του SQL Server αλλά στο programming του. Αυτό ακούει στο όνομα Stored Procedures. Είμαι σίγουρος ότι αν όχι όλοι οι περισσότεροι τις ξέρετε. Είμαι σίγουρος ότι υπάρχουν φανατικοί υποστηρικτές τους, όπως επίσης και άλλοι που όταν ακούνε το όνομα τους βγάζουν σπυράκια. ...

04 Dec 2014

Do not uncheck “Prevent saving changes that require table re-creation” option on SSMS

Οι περισσότεροι από εσάς όταν θέλετε να αλλάξετε την δομή ενός πίνακα σε μια βάση χρησιμοποιείτε το SQL Server Management Studio (SSMS) όπου με δεξί κλικ στον πίνακα κάνετε design και αφού κάνετε την αλλαγή που θέλετε πατάτε το save button από την toolbar.

06 Sep 2011

Are Cursors evil or not?

Πριν τις καλοκαιρινές μου διακοπές είχα ένα τμήμα στο οποίο έκανα μάθημα όλη την σειρά σεμιναρίων του SQL Server 2008 R2. Το τμήμα αυτό είχε συναδέλφους που ήταν αποκλειστικά Oracle DBAs και Devs. Κατά την διάρκεια των σεμιναρίων είχα αρκετές ερωτήσεις του στυλ στην Oracle κάνουμε αυτό στο SQL το κάνουμε και πώς το κάνουμε. Από μια σύμπτωση η σειρά το σεμιναρίων ήταν πρώτα το administration, και μετά το programming και μετά το σεμινάριο με την T-SQL.

26 Sep 2017

Date and Time popular calculations

Δεν είναι λίγες οι φορές που στα σεμινάρια που κάνω ειδικά στην T-SQL οι μαθητές μου με ρωτάνε για το πως να υπολογίσουν διάφορα πράγματα με τις ημερομηνίες.Επίσης βλέπω αρκετούς να βασανίζονται στα queries που γράφουν για να κάνουν τους διάφορους υπολογισμούς με τρόπους χαοτικούς και δαπανηρούς στην εκτέλεση.Για αυτό το λόγο σε αυτό το μικρό άρθρο σας παραθέτω το πως μπορείτε να υπολογίσετε γρήγορα και με σχεδόν μηδενικό κόστος τις δημοφιλέστερες ερωτήσεις με τις ημερομηνίες

13 Jan 2017

How to find unpaid balance

Πάντα όταν κάνω μάθημα για την T-SQL οι μαθητές μου με ρωτάνε να τους δείξω πως μπορούν να λύσουν διάφορα προβλήματα που αντιμετωπίζουν στην εργασία τους και που τους έχουν παιδέψει αρκετά για να βρουν λύση ή δεν έχουν ακόμα βρει λύση και μαστορεύουν τα δεδομένα με χειρωνακτικό τρόπο στο Excel.

20 Sep 2016

SET vs SELECT when setting variables

Στην T-SQL υπάρχουν δύο τρόποι με τους οποίους μπορεί κανείς να θέσει μια μεταβλητή. Ο πρώτος είναι με το SET και ο δεύτερος είναι με την χρήση του select statement. Σε αυτό το post θα δούμε δύο σημαντικά σημεία στα οποία διαφοροποιούνται οι τρόποι αυτοί μεταξύ τους.

15 Dec 2015

Collations and string comparison in SQL Server

Σε αυτό το post θα ασχοληθούμε με το πώς μπορούμε να συγκρίνουμε στην T-SQL strings με διαφορετικό collation. Επίσης, θα δούμε πως μπορούμε να χρησιμοποιήσουμε την αλλαγή του collation για να κάνουμε case sensitive searches, στην περίπτωση που έχουμε case insensitive collation.

21 Jun 2015

Introduction to Relational Algebra pt1: Ορισμός και παρουσίαση βασικών πράξεων

H Σχεσιακή Άλγεβρα αποτελεί την βάση του σχεδιασμού γλωσσών ερωτημάτων (βλέπε T-SQL), και χρησιμοποιείται από το RDBMS για την μετατροπή των queries σε δεντρική μορφή και τελικά στο optimization αυτών (χρήση του algebrizer, αναπαράσταση execution plans).

18 Jun 2012

Why you must terminate your statements with semicolon (;)

Αφορμή για αυτό το post ήταν δύο γεγονότα τα οποία μου συνέβησαν το τελευταίο διάστημα. Το ένα ήταν μια «διαμάχη» με έναν συνάδελφο σχετικά με το γεγονός ότι πλέον δεν υποστηρίζεται πλέον στον SQL Server 2012 η sp_dboption, και το άλλο είναι ένα προσωπικό μήνυμα που έλαβα από κάποιον άλλο συνάδελφο σχετικά με το αν θα πρέπει να χρησιμοποιείται το semicolon στο τέλος των εντολών της T-SQL.

1 2 3 

|< < > >| 

Categories

Labels

0-9

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Σ

Become a member

If you want to receive updates from us become a member to our community.

Connect

Explore

Learn


sqlschool.gr © 2010-2024 All rights reserved

This site uses cookies for operational and analytics purposes only. By continuing to browse this site, you agree to their use.