Trong bài viết này, tôi sẽ giải thích cách bạn có thể chuyển mệnh đề where trong phạm vi ngày trong máy chủ SQL và cũng chỉ cho bạn cách bạn có thể lọc bản ghi từ bảng cụ thể dựa trên điều kiện trong mệnh đề where trong máy chủ SQL cũng như giải thích cách bạn có thể chuyển đổi định dạng ngày trong dd / MM / yyyy hoặc yyyy-MM-dd trong máy chủ SQL.

Bạn đang xem : định dạng ngày sql trong mệnh đề where

Giới thiệu

Trong khi làm việc với bất kỳ ứng dụng hướng dữ liệu nào, đôi khi bạn cần tìm nạp và lọc dữ liệu, cập nhật hoặc xóa dữ liệu khỏi bảng dựa trên yêu cầu của bạn. đôi khi chúng tôi có phạm vi ngày và dựa trên phạm vi ngày đó, chúng tôi cần cập nhật, xóa hoặc chọn dữ liệu từ bất kỳ bảng nào có sẵn trong cơ sở dữ liệu của bạn, từ một bảng hoặc nhiều bảng bằng cách sử dụng liên kết.

Mệnh đề WHERE trong SQL Server là gì?

Trong SQL Server mệnh đề WHERE được sử dụng để lọc các bản ghi khỏi bảng. Nó cũng được sử dụng để trích xuất chỉ những bản ghi đáp ứng một điều kiện cụ thể được chuyển trong mệnh đề WHERE. Nó không chỉ được sử dụng trong câu lệnh SELECT mà còn được sử dụng trong câu lệnh UPDATE và DELETE.

Yêu cầu

1) Tạo / Khai báo bảng tạm thời với tên “Nhân viên” .
2) Chèn một số bản ghi giả trên bảng “Nhân viên” để minh họa.
3) Chọn tất cả nhân viên từ bảng nhân viên có ngày sinh từ 01-01-1996 đến 01-01-1997 .
4) Tiêu chí Ngày tháng phải là tùy chọn .
4) Nếu Người dùng không nhập / chọn bất kỳ ngày nào thì tất cả bản ghi sẽ xuất hiện dưới dạng tập hợp kết quả.

Thực hiện

Vì vậy, hãy bắt đầu với một ví dụ và đầu tiên chúng ta sẽ khai báo một bảng có tên Nhân viên dựa trên yêu cầu nhất định.

 

KHAI BÁO

@E Employee

NHƯ

BẢNG

(

EmpId

INT

,

FirstName

VARCHAR

(

50

),

LastName

VARCHAR

(

50

)

,

Bộ phận

VARCHAR

(

50

),

Chỉ định

VARCHAR

(

50

),

Quốc gia

VARCHAR

(

50

),

DateOfBirth

DATETIME

)

Bây giờ, chúng tôi sẽ chèn một số bản ghi giả trên bảng Nhân viên để minh họa.

 

CHÈN

VÀO

@ Nhân viên làm việc

GIÁ TRỊ

(

1

,

'Nikunj'

,

'Satasiya'

, < / p>

'CNTT'

,

'Kỹ sư phần mềm'

,

'Ấn Độ'

,

'1996-04-08 00: 00: 00: 00'

),

(

2

,

'Hiren'

,

'Dobariya'

, < / p>

'IT'

,

'Web Devloper'

,

'Ấn Độ'

,

'1996-12-31 00: 00: 00: 00'

),

(

3

,

'Krishna'

,

'Patel'

, < / p>

'IT'

,

'Web Devloper'

,

'Vương quốc Anh'

,

'1995-10-05 00: 00: 00: 00'

),

(

4

,

'Vivek'

,

'Ghadiya'

, < / p>

'CNTT'

,

'Kỹ sư phần mềm'

,

'Ấn Độ'

,

'1993-12-18 00: 00: 00: 00'

),

(

5

,

'Pratik'

,

'Pansuriya'

, < / p>

'CNTT'

,

'Kỹ sư phần mềm'

,

'Ấn Độ'

,

'1997-01-16 00: 00: 00: 00'

),

(

6

,

'Sneha'

,

'Patel'

, < / p>

'IT'

,

'Web Devloper'

,

'Ấn Độ'

,

'1996-08-07 00: 00: 00: 00'

)

Nếu bạn đọc yêu cầu đã cho thì chúng tôi cần tìm nạp tất cả các bản ghi của nhân viên có sinh nhật đến trong phạm vi ngày nhất định được chuyển làm tiêu chí trong điều khoản và ngày tiêu chí phải là tùy chọn , điều đó có nghĩa là nếu người dùng đã không chọn bất kỳ phạm vi ngày nào thì tất cả các bản ghi thích hợp sẽ được hiển thị dưới dạng tập hợp kết quả.

Vì vậy, Đầu tiên, chúng tôi sẽ khai báo hai tham số cho Tiêu chí Từ và Đến nay.

 

DECLARE

@From_Birth_Date

VARCHAR

(

10

) =

'1996-01-01' < / p>

,

@To_Birth_Date

VARCHAR

(

10

) =

'1997-01-01' < / p>

Bây giờ, chúng tôi sẽ viết một câu lệnh chọn lọc để lưu trữ yêu cầu của chúng tôi.

 

- Tuyên bố của nhà cung cấp dịch vụ --------------------

DECLARE

@From_Birth_Date

VARCHAR

(

10

) =

'1996-01-01'

,

@To_Birth_Date

VARCHAR

(

10

) =

'1997-01-01'

CHỌN

*

FROM

@Eprisee Emp

Ở ĐÂU

------------- Tiêu chí ngày đầu tiên cho ngày từ -----------------

(

CAST

(

Emp

.

DateOfBirth

NHƯ

< p> DATE

)

& gt; =

CAST

(

@From_Birth_Date

NHƯ

NGÀY

)

HOẶC

1

=

(

TRƯỜNG HỢP

KHI NÀO

LTRIM

(

RTRIM

(

@From_Birth_Date

))

=

< p> ''

VẬY

1

HẾT

0

HẾT

)

)

------------- Tiêu chí ngày thứ 2 cho ngày tổ chức -----------------

(

CAST

(

Emp

.

DateOfBirth < p> NHƯ

NGÀY

)

& lt; =

ĐÚC

(

@ To_Birth_Date

AS

DATE

)

HOẶC

1

=

(

TRƯỜNG HỢP

KHI NÀO

LTRIM

(

RTRIM

(

@To_Birth_Date

))

=

< p> ''

VẬY

1

HẾT

0

HẾT

)

)

Nếu bạn đã phân tích ở trên câu lệnh select thì chúng tôi đã chuyển phạm vi ngày trong mệnh đề where làm tiêu chí ngày. chúng tôi đã truyền / chuyển đổi cột DateOfBirth của mình ở định dạng “yyyy-MM-dd” .

Làm cách nào để chuyển đổi / truyền ngày ở định dạng “dd / MM / yyyy”?

 

CHỌN

CHUYỂN ĐỔI

(

VARCHAR

(

10

), < / p>

NHẬN NGÀY

(),

103

)

[Ngày]

Làm cách nào để chuyển đổi / truyền ngày ở định dạng “yyyy-MM-dd”?

 

CHỌN

ĐÚC

(

NHẬN NGÀY

()

NHƯ

NGÀY

)

[Ngày]

Chúng tôi đã sử dụng điều kiện ngày tháng như được hiển thị bên dưới, trong đó CAST (Emp.DateOfBirth AS DATE) & gt; = CAST (@From_Birth_Date AS DATE) trả về tất cả các bản ghi từ bảng nhân viên có ngày sinh bằng hoặc lớn hơn bằng From_Birth_Date. Bây giờ, giả sử người dùng không chuyển From_Birth_Date làm tiêu chí ngày thì chúng tôi cũng sử dụng một điều kiện khác với toán tử “OR” với điều kiện này trong đó chúng tôi đã kiểm tra nếu From_Birth_Date trống thì điều kiện của chúng tôi phải là 1 = 1 else 1 = 0 .

 

(

CAST

(

Emp

.

DateOfBirth

AS

NGÀY < / p>

)

& gt; =

CAST

(

@From_Birth_Date

NHƯ

NGÀY

)

HOẶC

1

=

(

TRƯỜNG HỢP

KHI NÀO

LTRIM

(

RTRIM

(

@From_Birth_Date

))

=

< p> ''

VẬY

1

HẾT

0

HẾT

)

)

Bây giờ, chúng tôi đã vượt qua tiêu chí ngày thứ hai cho To_Birth_Date giống như ở trên chỉ là điều kiện của chúng tôi sẽ thay đổi, ở đây chúng tôi sẽ sử dụng một cái gì đó như CAST (Emp.DateOfBirth AS DATE) & lt; = CAST (@To_Birth_Date AS DATE) và điều kiện này sẽ trả về tất cả các bản ghi từ bảng nhân viên có ngày sinh nhỏ hơn hoặc bằng To_Birth_Date. và cũng đã sử dụng toán tử “OR” với điều kiện này, trong đó chúng tôi đã kiểm tra xem To_Birth_Date có trống không thì điều kiện của chúng tôi phải là 1 = 1 else 1 = 0 .

 

(

CAST

(

Emp

. DateOfBirth

AS

NGÀY

)

& lt; =

CAST

( @To_Birth_Date

AS

NGÀY

)

HOẶC

1

=

(

TRƯỜNG HỢP

KHI NÀO

LTRIM

(

RTRIM

(

@To_Birth_Date

))

=

< p> ''

VẬY

1

HẾT

0

HẾT

)

)

Đầu ra

Với Tiêu chí Ngày tháng

Điều kiện phạm vi ngày của máy chủ SQL trong mệnh đề WHERE với tiêu chí ngày
Điều kiện phạm vi ngày của máy chủ SQL trong mệnh đề WHERE với tiêu chí ngày

Không có Tiêu chí Ngày tháng

Điều kiện phạm vi ngày của máy chủ SQL trong mệnh đề WHERE không có tiêu chí ngày
Điều kiện phạm vi ngày của máy chủ SQL trong mệnh đề WHERE không có tiêu chí ngày


Tóm tắt

Bài viết này giải thích cách sử dụng tiêu chí phạm vi ngày trong mệnh đề where và cách viết / sử dụng mệnh đề where trong máy chủ SQL.

Trong SQL Server mệnh đề WHERE được sử dụng để lọc các bản ghi khỏi bảng. Nó cũng được sử dụng để trích xuất chỉ những bản ghi đáp ứng một điều kiện cụ thể được chuyển trong mệnh đề WHERE. Nó không chỉ được sử dụng trong câu lệnh SELECT mà còn được sử dụng trong câu lệnh UPDATE và DELETE.1) Tạo / Khai báo bảng tạm thời với tên ngày sinh betweento4) Tiêu chí ngày tháng phải là4) Nếu Người dùng không nhập / chọn bất kỳ ngày nào thì tất cả bản ghi sẽ xuất hiện dưới dạng tập hợp kết quả. Bây giờ, chúng tôi sẽ chèn một số bản ghi giả trên bảng Nhân viên, để minh họa. date, có nghĩa là nếu người dùng không chọn bất kỳ phạm vi ngày nào thì tất cả các bản ghi thích hợp sẽ được hiển thị dưới dạng tập kết quả. Vì vậy, Đầu tiên, chúng ta sẽ khai báo hai tham số cho From và To date Criteria. tuyên bố lưu trữ của chúng tôi Nếu bạn đã phân tích câu lệnh select ở trên thì chúng ta đã chuyển phạm vi ngày trong mệnh đề where làm tiêu chí ngày. chúng tôi đã ép kiểu / chuyển đổi cột DateOfBirth thông báo. Chúng tôi đã sử dụng điều kiện ngày tháng như được hiển thị bên dưới, trong đó quay lại tất cả các bản ghi từ bảng nhân viên có ngày sinh bằng hoặc lớn hơn From_Birth_Date. Bây giờ, giả sử người dùng không vượt qua From_Birth_Date làm tiêu chí ngày thì chúng tôi cũng đã sử dụng một điều kiện khác với người dùng với điều kiện này, trong đó chúng tôi đã kiểm tra nếu From_Birth_Date trống thì điều kiện của chúng tôi sẽ có giá trị điều kiện sẽ thay đổi, ở đây chúng tôi sẽ sử dụng một cái gì đó liên quan và điều kiện này sẽ trả về tất cả các bản ghi từ bảng nhân viên có ngày sinh nhỏ hơn hoặc bằng To_Birth_Date. và cũng đã sử dụng hệ điều hành với điều kiện này, trong đó chúng tôi đã kiểm tra nếu To_Birth_Date trống thì điều kiện của chúng tôi sẽ được kết thúc. Bài viết này giải thích cách sử dụng tiêu chí phạm vi ngày trong mệnh đề where và cách viết / sử dụng mệnh đề where trong máy chủ SQL.


Xem thêm những thông tin liên quan đến chủ đề định dạng ngày sql trong mệnh đề where

SQL Server DATETIME, DATE and TIME data types | Manipulating Dates, times and Strings | SQL basics

alt

  • Tác giả: Database Doodle
  • Ngày đăng: 2022-02-02
  • Đánh giá: 4 ⭐ ( 3250 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: SQL Server DATETIME, DATE and TIME data types are essential to know before attempting pretty much any query involving time periods in data. Knowing how to convert date and time types to and from string values can prove problematic if you arent familiar with how SQL server defines and parses dates.

    In this video I’ll show you each DATE data type and describe its basic form, how to convert dates to and from strings, and the issues you might have trying to query against date values due to the locale settings on your SQL server.

    I’ll also go through how to manipulate dates and times by separating out date parts using the DATEPART and DATENAME functions, retrieving the current date using either GETDATE() or CURRENT_TIMESTAMP functions, adding, subtracting and finding the difference between dates using the DATEADD and DATEDIFF functions, and finally how to use what you’ve learned to create functions that show the first and last dates of the week, month or quarter.

    Download the SQL code from Github : https://bit.ly/3GMwgQ7

    See my introductory Udemy course on the full features of the SELECT clause : https://bit.ly/3EslGwo

    Useful links relating to this video :

    https://www.mssqltips.com/sqlservertip/5993/sql-server-date-and-time-functions-with-examples/
    An excellent overview of the main SQL Server date and time functions all in one place.

    https://jasonstrate.com/2010/03/10/grouping-and-rounding-dates/
    A great article on rounding dates to get different set periods such as the first date in a month or a quarter etc.

    https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql
    The link to the Microsoft documentation on the CAST and CONVERT functions, showing all the available styles.

    https://docs.microsoft.com/en-us/sql/t-sql/functions/date-and-time-data-types-and-functions-transact-sql
    Microsoft documentation detailing the limitations of each date data type.

    https://docs.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings
    Documentation for the FORMAT function, showing the different types of date and time formatting codes.

    https://www.red-gate.com/simple-talk/databases/sql-server/t-sql-programming-sql-server/how-to-get-sql-server-dates-and-times-horribly-wrong/
    A further look into how SQL server stores dates and times, and a few important things to remember when working with dates and times

    Video Chapters

    00:00 Intro
    00:29 Date and Time Datatypes
    04:13 How Dates are stored in the database
    06:05 Converting a date to a string
    09:17 Converting a string to a date
    10:59 Separating dates from times
    12:22 Getting the current date and time
    13:11 Getting parts of dates and times with DATEPART and DATENAME
    14:10 Finding the difference between two dates with DATEDIFF
    14:59 Adding and subtracting periods to a date with DATEADD
    15:18 Get first / last day of the week / month / quarter
    19:01 Outro

Mệnh đề WHERE trong SQL

  • Tác giả: viettuts.vn
  • Đánh giá: 4 ⭐ ( 1818 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Mệnh đề WHERE trong SQL được sử dụng để chỉ định một điều kiện trong khi lấy dữ liệu từ một bảng hoặc bằng cách join với nhiều bảng. Nếu điều kiện thỏa mãn,

One moment, please…

  • Tác giả: www.sql.edu.vn
  • Đánh giá: 5 ⭐ ( 1607 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Cách định dạng đúng mã SQL

  • Tác giả: helpex.vn
  • Đánh giá: 5 ⭐ ( 8770 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Viết truy vấn vào cơ sở dữ liệu yêu cầu kiến ​​thức về cú pháp SQL, nhưng đây không phải là tất cả những gì bạn nên biết. Các phương pháp hay nhất để viết mã SQL chuyên nghiệp yêu cầu kỹ…

Mệnh đề WHERE

  • Tác giả: support.microsoft.com
  • Đánh giá: 5 ⭐ ( 6081 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Mệnh Đề WHERE Trong SQL

  • Tác giả: www.codehub.com.vn
  • Đánh giá: 5 ⭐ ( 8928 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Mệnh Đề WHERE Trong SQL Để Làm Gì?
    ———————–
    – Mệnh đề **WHERE** được sử dụng để lọc các bản ghi.

    – Mệnh đề **WHERE** được sử dụng để trích xuất chỉ những bản ghi đáp ứng điều kiện được chỉ định.

    Cú Pháp Mệnh Đề WHERE
    ———-…

Mệnh đề WHERE trong SQL

  • Tác giả: vietjack.com
  • Đánh giá: 4 ⭐ ( 4109 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Mệnh đề WHERE trong SQL – Học SQL cơ bản nâng cao. Học SQL trực tuyến theo các bước từ Khái niệm về database, Cú pháp SQL, Truy vấn SELECT, Truy vấn INSERT, Lệnh DELETE, Truy vấn UPDATE, Ràng buộc (Constraint), Truy vấn DROP, Lệnh TRUNCATE, Từ khóa DISTINCT, Mệnh đề ORDER BY, Mệnh đề GROUP BY, Mệnh đề WHERE, Sử dụng Join, Sử dụng View, Sử dụng Sequence, Transaction, Hàm xử lý, Bảng tạm, Toán tử.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Khả năng truy cập web trở nên dễ dàng: Thứ tự tab - Mẹo đào tạo CNTT - cách kiểm soát thứ tự tab trong html

By ads_php