Pemetaan Fungsi Penyedia Microsoft SQL Server
Halaman ini menunjukkan anggota .NET mana yang diterjemahkan ke dalam fungsi SQL mana saat menggunakan penyedia SQL Server.
Fungsi agregat
.NET | SQL | Ditambahkan dalam |
---|---|---|
EF. Functions.StandardDeviationSample(group. Pilih(x => x.Property)) | STDEV(Properti) | EF Core 7.0 |
EF. Functions.StandardDeviationPopulation(group. Pilih(x => x.Property)) | STDEVP(Properti) | EF Core 7.0 |
EF. Functions.VarianceSample(group. Pilih(x => x.Property)) | VAR(Properti) | EF Core 7.0 |
EF. Functions.VariancePopulation(group. Pilih(x => x.Property)) | VARP(Properti) | EF Core 7.0 |
kelompok. Average(x => x.Property) | AVG(Property) | |
kelompok. Count() | COUNT(*) | |
kelompok. LongCount() | COUNT_BIG(*) | |
kelompok. Maks(x => x.Property) | MAX(Property) | |
kelompok. Min(x => x.Property) | MIN(Property) | |
kelompok. Sum(x => x.Property) | SUM(Properti) | |
tali. Concat(grup. Pilih(x => x.Property)) | STRING_AGG(Properti, N''') | EF Core 7.0 |
tali. Gabung(pemisah, grup. Pilih(x => x.Property)) | STRING_AGG(Properti, @separator) | EF Core 7.0 |
Fungsi biner
.NET | SQL | Ditambahkan dalam |
---|---|---|
Byte. Contains(value) | CHARINDEX(@value, @bytes)> 0 | |
Byte. ElementAt(i) | SUBSTRING(@bytes, @i + 1, 1) | EF Core 8.0 |
Byte. Pertama() | SUBSTRING(@bytes, 1, 1) | |
Byte. Panjangnya | DATALENGTH(@bytes) | |
Byte. SequenceEqual(second) | @bytes = @second | |
byte[i] | SUBSTRING(@bytes, @i + 1, 1) | |
EF. Functions.DataLength(arg) | DATALENGTH(@arg) |
Fungsi konversi
.NET | SQL | Ditambahkan dalam |
---|---|---|
Byte. ToString() | CONVERT(varchar(100), @bytes) | |
byteValue.ToString() | CONVERT(varchar(3), @byteValue) | |
charValue.ToString() | CONVERT(varchar(1), @charValue) | |
Convert.ToBoolean(value) | CONVERT(bit, @value) | |
Convert.ToByte(value) | CONVERT(tinyint, @value) | |
Convert.ToDecimal(value) | CONVERT(desimal(18, 2), @value) | |
Convert.ToDouble(value) | CONVERT(float, @value) | |
Convert.ToInt16(value) | CONVERT(smallint, @value) | |
Convert.ToInt32(value) | CONVERT(int, @value) | |
Convert.ToInt64(value) | CONVERT(bigint, @value) | |
Convert.ToString(value) | CONVERT(nvarchar(max), @value) | |
dateOnly.ToString() | CONVERT(varchar(100), @dateOnly) | EF Core 8.0 |
dateTime.ToString() | CONVERT(varchar(100), @dateTime) | |
dateTimeOffset.ToString() | CONVERT(varchar(100), @dateTimeOffset) | |
decimalValue.ToString() | CONVERT(varchar(100), @decimalValue) | |
doubleValue.ToString() | CONVERT(varchar(100), @doubleValue) | |
floatValue.ToString() | CONVERT(varchar(100), @floatValue) | |
Guid. ToString() | CONVERT(varchar(36), @guid) | |
intValue.ToString() | CONVERT(varchar(11), @intValue) | |
longValue.ToString() | CONVERT(varchar(20), @longValue) | |
sbyteValue.ToString() | CONVERT(varchar(4), @sbyteValue) | |
shortValue.ToString() | CONVERT(varchar(6), @shortValue) | |
timeOnly.ToString() | CONVERT(varchar(100), @timeOnly) | EF Core 8.0 |
timeSpan.ToString() | CONVERT(varchar(100), @timeSpan) | |
uintValue.ToString() | CONVERT(varchar(10), @uintValue) | |
ulongValue.ToString() | CONVERT(varchar(19), @ulongValue) | |
ushortValue.ToString() | CONVERT(varchar(5), @ushortValue) |
Fungsi tanggal dan waktu
.NET | SQL | Ditambahkan dalam |
---|---|---|
DateTime.Now | GETDATE() | |
DateTime.Today | CONVERT(date, GETDATE()) | |
DateTime.UtcNow | GETUTCDATE() | |
dateTime.AddDays(value) | DATEADD(hari, @value, @dateTime) | |
dateTime.AddHours(value) | DATEADD(jam, @value, @dateTime) | |
dateTime.AddMilliseconds(value) | DATEADD(milidetik, @value, @dateTime) | |
dateTime.AddMinutes(value) | DATEADD(menit, @value, @dateTime) | |
dateTime.AddMonths(bulan) | DATEADD(bulan, @months, @dateTime) | |
dateTime.AddSeconds(value) | DATEADD(detik, @value, @dateTime) | |
dateTime.AddYears(value) | DATEADD(year, @value, @dateTime) | |
dateTime.Date | CONVERT(date, @dateTime) | |
dateTime.Day | DATEPART(hari, @dateTime) | |
dateTime.DayOfYear | DATEPART(dayofyear, @dateTime) | |
dateTime.Hour | DATEPART(jam, @dateTime) | |
dateTime.Microsecond | DATEPART(microsecond, @dateTime) % 1000 | EF Core 10.0 |
dateTime.Millisecond | DATEPART(milidetik, @dateTime) | |
dateTime.Minute | DATEPART(menit, @dateTime) | |
dateTime.Month | DATEPART(bulan, @dateTime) | |
dateTime.Nanosecond | DATEPART(nanodetik, @dateTime) % 1000 | EF Core 10.0 |
dateTime.Second | DATEPART(detik, @dateTime) | |
dateTime.TimeOfDay | CONVERT(time, @dateTime) | |
dateTime.Year | DATEPART(tahun, @dateTime) | |
DateTimeOffset.Now | SYSDATETIMEOFFSET() | |
DateTimeOffset.UtcNow | SYSUTCDATETIME() | |
dateTimeOffset.AddDays(days) | DATEADD(hari, @days, @dateTimeOffset) | |
dateTimeOffset.AddHours(hours) | DATEADD(jam, @hours, @dateTimeOffset) | |
dateTimeOffset.AddMilliseconds(milidetik) | DATEADD(milidetik, @milliseconds, @dateTimeOffset) | |
dateTimeOffset.AddMinutes(menit) | DATEADD(menit, @minutes, @dateTimeOffset) | |
dateTimeOffset.AddMonths(bulan) | DATEADD(bulan, @months, @dateTimeOffset) | |
dateTimeOffset.AddSeconds(detik) | DATEADD(detik, @seconds, @dateTimeOffset) | |
dateTimeOffset.AddYears(years) | DATEADD(year, @years, @dateTimeOffset) | |
dateTimeOffset.Date | CONVERT(date, @dateTimeOffset) | |
dateTimeOffset.Day | DATEPART(hari, @dateTimeOffset) | |
dateTimeOffset.DayOfYear | DATEPART(dayofyear, @dateTimeOffset) | |
dateTimeOffset.Hour | DATEPART(jam, @dateTimeOffset) | |
dateTimeOffset.Microsecond | DATEPART(microsecond, @dateTimeOffset) % 1000 | EF Core 10.0 |
dateTimeOffset.Millisecond | DATEPART(milidetik, @dateTimeOffset) | |
dateTimeOffset.Minute | DATEPART(menit, @dateTimeOffset) | |
dateTimeOffset.Month | DATEPART(bulan, @dateTimeOffset) | |
dateTimeOffset.Nanosecond | DATEPART(nanodetik, @dateTimeOffset) % 1000 | EF Core 10.0 |
dateTimeOffset.Second | DATEPART(detik, @dateTimeOffset) | |
dateTimeOffset.TimeOfDay | CONVERT(time, @dateTimeOffset) | |
dateTimeOffset.ToUnixTimeSeconds() | DATEDIFF_BIG(detik, '1970-01-01T00:00:00.0000000+00:00', @dateTimeOffset) | EF Core 8.0 |
dateTimeOffset.ToUnixTimeMilliseconds() | DATEDIFF_BIG(milidetik, '1970-01-01T00:00:00.0000000+00:00', @dateTimeOffset) | EF Core 8.0 |
dateTimeOffset.Year | DATEPART(tahun, @dateTimeOffset) | |
DateOnly.FromDateTime(dateTime) | CONVERT(date, @dateTime) | EF Core 8.0 |
dateOnly.AddDays(value) | DATEADD(hari, @value, @dateOnly) | EF Core 8.0 |
dateOnly.AddMonths(bulan) | DATEADD(bulan, @months, @dateOnly) | EF Core 8.0 |
dateOnly.AddYears(value) | DATEADD(year, @value, @dateOnly) | EF Core 8.0 |
dateOnly.Day | DATEPART(hari, @dateOnly) | EF Core 8.0 |
dateOnly.DayOfYear | DATEPART(dayofyear, @dateOnly) | EF Core 8.0 |
dateOnly.Month | DATEPART(bulan, @dateOnly) | EF Core 8.0 |
dateOnly.Year | DATEPART(tahun, @dateOnly) | EF Core 8.0 |
EF. Functions.AtTimeZone(dateTime, timeZone) | @dateTime ZONA WAKTU @timeZone | EF Core 7.0 |
EF. Functions.DateDiffDay(start, end) | DATEDIFF(hari, @start, @end) | |
EF. Functions.DateDiffHour(start, end) | DATEDIFF(jam, @start, @end) | |
EF. Functions.DateDiffMicrosecond(start, end) | DATEDIFF(microsecond, @start, @end) | |
EF. Functions.DateDiffMillisecond(start, end) | DATEDIFF(milidetik, @start, @end) | |
EF. Functions.DateDiffMinute(start, end) | DATEDIFF(menit, @start, @d2) | |
EF. Functions.DateDiffMonth(start, end) | DATEDIFF(bulan, @start, @end) | |
EF. Functions.DateDiffNanosecond(start, end) | DATEDIFF(nanodetik, @start, @end) | |
EF. Functions.DateDiffSecond(start, end) | DATEDIFF(detik, @start, @end) | |
EF. Functions.DateDiffWeek(start, end) | DATEDIFF(minggu, @start, @end) | |
EF. Functions.DateDiffYear(start, end) | DATEDIFF(tahun, @start, @end) | |
EF. Functions.DateFromParts(tahun, bulan, hari) | DATEFROMPARTS(@year, @month, @day) | |
EF. Functions.DateTime2FromParts(year, month, day, ...) | DATETIME2FROMPARTS(@year, @month, , @day...) | |
EF. Functions.DateTimeFromParts(year, month, day, ...) | DATETIMEFROMPARTS(@year, , @month@day, ...) | |
EF. Functions.DateTimeOffsetFromParts(tahun, bulan, hari, ...) | DATETIMEOFFSETFROMPARTS(@year, @month, , @day...) | |
EF. Functions.IsDate(expression) | ISDATE(@expression) | |
EF. Functions.SmallDateTimeFromParts(tahun, bulan, hari, ...) | SMALLDATETIMEFROMPARTS(@year, , @month, @day...) | |
EF. Functions.TimeFromParts(jam, menit, detik, ...) | TIMEFROMPARTS(@hour, @minute, @second, ...) | |
timeOnly.AddHours(value) | DATEADD(jam, @value, @timeOnly) | EF Core 8.0 |
timeOnly.AddMinutes(value) | DATEADD(menit, @value, @timeOnly) | EF Core 8.0 |
timeOnly.Hour | DATEPART(jam, @timeOnly) | EF Core 8.0 |
timeOnly.IsBetween(start, end) | @timeOnly >= @start DAN @timeOnly<@end | EF Core 8.0 |
timeOnly.Microsecond | DATEPART(microsecond, @timeOnly) % 1000 | EF Core 10.0 |
timeOnly.Millisecond | DATEPART(milidetik, @timeOnly) | EF Core 8.0 |
timeOnly.Minute | DATEPART(menit, @timeOnly) | EF Core 8.0 |
timeOnly.Nanosecond | DATEPART(nanodetik, @timeOnly) % 1000 | EF Core 10.0 |
timeOnly.Second | DATEPART(detik, @timeOnly) | EF Core 8.0 |
timeSpan.Hours | DATEPART(jam, @timeSpan) | |
timeSpan.Microsecond | DATEPART(microsecond, @timeSpan) % 1000 | EF Core 10.0 |
timeSpan.Milliseconds | DATEPART(milidetik, @timeSpan) | |
timeSpan.Minutes | DATEPART(menit, @timeSpan) | |
timeSpan.Nanosecond | DATEPART(nanosecond, @timeSpan) % 1000 | EF Core 10.0 |
timeSpan.Seconds | DATEPART(detik, @timeSpan) |
Fungsi numerik
.NET | SQL | Ditambahkan dalam |
---|---|---|
dobel. DegreesToRadians(x) | RADIANS(@x) | EF Core 8.0 |
dobel. RadiansToDegrees(x) | DEGREES(@x) | EF Core 8.0 |
EF. Functions.Random() | RAND() | |
Math.Abs(value) | ABS(@value) | |
Math.Acos(d) | ACOS(@d) | |
Math.Asin(d) | ASIN(@d) | |
Math.Atan(d) | ATAN(@d) | |
Math.Atan2(y, x) | ATN2(@y, @x) | |
Math.Ceiling(d) | CEILING(@d) | |
Math.Cos(d) | COS(@d) | |
Math.Exp(d) | EXP(@d) | |
Math.Floor(d) | FLOOR(@d) | |
Math.Log(d) | LOG(@d) | |
Math.Log(a, newBase) | LOG(@a, @newBase) | |
Math.Log10(d) | LOG10(@d) | |
Math.Max(x, y) | GREATEST(@x, @y) | EF Core 9.0 |
Math.Min(x, y) | LEAST(@x, @y) | EF Core 9.0 |
Math.Pow(x, y) | POWER(@x, @y) | |
Math.Round(d) | ROUND(@d, 0) | |
Math.Round(d, desimal) | ROUND(@d, @decimals) | |
Math.Sign(value) | SIGN(@value) | |
Math.Sin(a) | SIN(@a) | |
Math.Sqrt(d) | SQRT(@d) | |
Math.Tan(a) | TAN(@a) | |
Math.Truncate(d) | ROUND(@d, 0, 1) |
Tip
Selain metode yang tercantum di sini, implementasi matematika generik yang sesuai dan metode MathF juga diterjemahkan. Misalnya, Math.Sin
, , MathF.Sin
double.Sin
, dan float.Sin
semua peta ke SIN
fungsi di SQL.
Fungsi string
.NET | SQL | Ditambahkan dalam |
---|---|---|
EF. Functions.Collate(operand, collation) | @operand SUSUN @collation | |
EF. Functions.Contains(propertyReference, searchCondition) | CONTAINS(@propertyReference, @searchCondition) | |
EF. Functions.Contains(propertyReference, searchCondition, languageTerm) | CONTAINS(@propertyReference, @searchCondition, LANGUAGE @languageTerm) | |
EF. Functions.FreeText(propertyReference, freeText) | FREETEXT(@propertyReference, @freeText) | |
EF. Functions.FreeText(propertyReference, freeText, languageTerm) | FREETEXT(@propertyReference, @freeText, LANGUAGE @languageTerm) | |
EF. Functions.IsNumeric(expression) | ISNUMERIC(@expression) | |
EF. Functions.Like(matchExpression, pattern) | @matchExpression SUKA @pattern | |
EF. Functions.Like(matchExpression, pattern, escapeCharacter) | @matchExpression SEPERTI @pattern ESCAPE @escapeCharacter | |
tali. Bandingkan(strA, strB) | KASUS KETIKA @strA = @strB KEMUDIAN 0 ... UJUNG | |
tali. Concat(str0, str1) | @str0 + @str1 | |
tali. IsNullOrEmpty(value) | @value NULL ATAU @value SEPERTI N'' | |
tali. IsNullOrWhiteSpace(value) | @value IS NULL OR @value = N'' | |
tali. Join(", ", new [] { x, y, z}) | CONCAT_WS(N', ', @x, , @y@z) | EF Core 9.0 |
stringValue.CompareTo(strB) | KASUS KETIKA @stringValue = @strB KEMUDIAN 0 ... UJUNG | |
stringValue.Contains(value) | @stringValue LIKE N'%' + @value + N'%' | |
stringValue.EndsWith(value) | @stringValue LIKE N'%' + @value | |
stringValue.FirstOrDefault() | SUBSTRING(@stringValue, 1, 1) | |
stringValue.IndexOf(value) | CHARINDEX(@value, @stringValue) - 1 | |
stringValue.IndexOf(value, startIndex) | CHARINDEX(@value, @stringValue, @startIndex) - 1 | EF Core 7.0 |
stringValue.LastOrDefault() | SUBSTRING(@stringValue, LEN(@stringValue), 1) | |
stringValue.Length | LEN(@stringValue) | |
stringValue.Replace(@oldValue, @newValue) | REPLACE(@stringValue, @oldValue, @newValue) | |
stringValue.StartsWith(value) | @stringValue LIKE @value + N'%' | |
stringValue.Substring(startIndex) | SUBSTRING(@stringValue, @startIndex + 1, LEN(@stringValue)) | |
stringValue.Substring(startIndex, length) | SUBSTRING(@stringValue, @startIndex + 1, @length) | |
stringValue.ToLower() | LOWER(@stringValue) | |
stringValue.ToUpper() | UPPER(@stringValue) | |
stringValue.Trim() | LTRIM(RTRIM(@stringValue)) | |
stringValue.TrimEnd() | RTRIM(@stringValue) | |
stringValue.TrimStart() | LTRIM(@stringValue) |
Fungsi lain
.NET | SQL | Ditambahkan dalam |
---|---|---|
enumValue.HasFlag(flag) | @enumValue & @flag = @flag | |
Guid.NewGuid() | NEWID() | |
dapat diubah ke null. GetValueOrDefault() | COALESCE(@nullable, 0) | |
dapat diubah ke null. GetValueOrDefault(defaultValue) | COALESCE(@nullable, @defaultValue) |
Catatan
Beberapa SQL telah disederhanakan untuk tujuan ilustrasi. SQL aktual lebih kompleks untuk menangani berbagai nilai yang lebih luas.
Lihat juga
Berkolaborasi dengan kami di GitHub
Sumber untuk konten ini dapat ditemukan di GitHub, yang juga dapat Anda gunakan untuk membuat dan meninjau masalah dan menarik permintaan. Untuk informasi selengkapnya, lihat panduan kontributor kami.