• 検索結果がありません。

関数サンプル1

N/A
N/A
Protected

Academic year: 2021

シェア "関数サンプル1"

Copied!
51
0
0

読み込み中.... (全文を見る)

全文

(1)

SQLCompiler for LINQ(C#)

のサンプル

(LINQPad 用 LINQ to Entities 関数サンプル 1)

本サンプルで使用した Visual Studio プロジェクトの pubs データベースの概念モデル

は、以下のテーブル名とカラム名が、直接 SQL Sever へクエリする場合と異なるので、

T-SQL が補正されています。

テーブル名が異なるもの

・employee → employees

・royshed → roysheds

・titleauthor → titleauthors

カラム名が異なるもの

・discounts.discount → discounts.discount1

・titles.title → titles.title1

Northwind データベースについては、本サンプルで使用しているテーブル名とカラム名

は、概念モデルと一致しています。

<一覧表>

ファイル名 関数名 引数の説明 リンク

No1.linq ABS NULL 許容(smallint 型)と NULL 禁止(decimal 型) 表 1

No1_2.linq ABS NULL 許容(smallint 型)と NULL 禁止(decimal 型):NULL 出力 表 1_2

No1_3.linq ABS NULL 許容(smallint 型)と NULL 禁止(decimal 型):1 加算 表 1_3

No2.linq ABS 数値リテラル 表 2

No3.linq ASCII NULL 禁止(varchar 型) 表 3

No4.linq ASCII 文字列リテラル 表 4

N03_2.linq ASCII NULL 許容(char 型) 表 3_2

No5.linq AVG NULL 許容(money 型) 表 5

No6.linq CAST NULL 許容(int 型)を varchar 型に変換する 表 6

No6_2.linq CAST NULL 許容(int 型)を varchar 型に変換する:NULL 出力 表 6_2

No6_3.linq CAST NULL 禁止(tinyint 型)を varchar 型に変換する 表 6_3

No7.linq CAST NULL 許容(int 型)を decimal(5, 2)型に変換する 表 7

No7_2.linq CAST NULL 禁止(tinyint 型)を decimal(5, 2)型に変換する 表 7_2

No7_3.linq CAST NULL 許容(int 型)を decimal(5, 2)型に変換する:NULL 出力 表 7_3

No7_4.linq CAST NULL 許容(int 型)を decimal(5)型に変換する 表 7_4

No7_5.linq CAST NULL 許容(int 型)を decimal 型に変換する 表 7_5

No7_6.linq CAST NULL 禁止(tinyint 型)を decimal(5)型に変換する 表 7_6

No7_7.linq CAST NULL 禁止(tinyint 型)を decimal 型に変換する 表 7_7

No7_8.linq CAST NULL 許容(int 型)を int 型に変換する 表 7_8

(2)

No7_10.linq CAST NULL 許容(int 型)を money 型に変換する 表 7_10

No7_11.linq CAST NULL 禁止(tinyint 型)を money 型に変換する 表 7_11

No7_12.linq CAST NULL 許容(int 型)を datetime 型に変換する 表 7_12

No7_13.linq CAST NULL 禁止(tinyint 型)を datetime 型に変換する 表 7_13

No7_14.linq CAST NULL 禁止(decimal(4, 2)型)を int 型に変換する 表 7_14

No7_15.linq CAST NULL 禁止(decimal(4, 2)型)を decimal(5, 1)型に変換する 表 7_15

No7_16.linq CAST NULL 禁止(decimal(4, 2)型)を decimal(5)型に変換する 表 7_16

No7_17.linq CAST NULL 禁止(decimal(4, 2)型)を money 型に変換する 表 7_17

No7_18.linq CAST NULL 禁止(decimal(4, 2)型)を varchar 型に変換する 表 7_18

No7_19.linq CAST NULL 禁止(decimal(4, 2)型)を datetime 型に変換する 表 7_19

No7_20.linq CAST NULL 許容(money 型)を int 型に変換する 表 7_20

No7_21.linq CAST NULL 許容(money 型)を decimal(5, 1)型に変換する 表 7_21

No7_22.linq CAST NULL 許容(money 型)を decimal(5)型に変換する 表 7_22

No7_23.linq CAST NULL 許容(money 型)を money 型に変換する 表 7_23

No7_24.linq CAST NULL 許容(money 型)を varchar 型に変換する 表 7_24

No7_25.linq CAST NULL 許容(money 型)を datetime 型に変換する 表 7_25

No7_26.linq CAST NULL 許容(char 型)を int 型に変換する 表 7_26

No7_27.linq CAST NULL 許容(char 型)を int 型に変換する:1 加算 表 7_27

No7_28.linq CAST NULL 許容(char 型)を decial(5, 1)型に変換する 表 7_28

No7_29.linq CAST NULL 禁止(char 型)を int 型に変換する 表 7_29

No7_30.linq CAST NULL 許容(char 型)を decimal(5)型に変換する 表 7_30

No7_31.linq CAST NULL 禁止(char 型)を decimal(5, 1)型に変換する 表 7_31

No7_32.linq CAST NULL 許容(char 型)を money 型に変換する 表 7_32

No7_33.linq CAST NULL 禁止(char 型)を money 型に変換する 表 7_33

No7_34.linq CAST NULL 許容(char 型)を varchar 型に変換する 表 7_34

No7_35.linq CAST NULL 禁止(char 型)を varchar 型に変換する 表 7_35

No7_36.linq CAST 文字列リテラルで表した時間を datetime 型に変換する 表 7_36

No7_37.linq CAST NULL 禁止(datetime 型)を int 型に変換する 表 7_37

No7_38.linq CAST NULL 禁止(datetime 型)を decimal(7, 1)型に変換する 表 7_38

No7_39.linq CAST NULL 禁止(datetime 型)を decimal(7)型に変換する 表 7_39

No7_40.linq CAST NULL 禁止(datetime 型)を money 型に変換する 表 7_40

No7_41.linq CAST NULL 禁止(datetime 型)を varchar 型に変換する 表 7_41

No7_42.linq CAST NULL 禁止(datetime 型)を datetime 型に変換する 表 7_42

No8.linq CEILING NULL 許容(money 型) 表 8

No8_2.linq CEILING NULL 許容(money 型):NULL 出力 表 8_2

No8_3.linq CEILING NULL 禁止(decimal(4, 2)型) 表 8_3

(3)

No9_2.linq CHAR NULL 許容(int 型):NULL 出力 表 9_2

No9_3.linq CHAR NULL 禁止(tinyint 型) 表 9_3

No10.linq COALESCE NULL 許容(money 型)と 0.0 表 10

No10_2.linq COALESCE NULL 許容(money 型)と 0 表 10_2

No10_3.linq COALESCE NULL 許容(money 型)と 0 と NULL 許容(money 型) 表 10_3

No10_4.linq COALESCE NULL 許容(money 型)と 0.0 と NULL 許容(money 型) 表 10_4

No10_5.linq COALESCE NULL 許容(money 型)と 0 と NULL 許容(int 型) 表 10_5

No10_7.linq COALESCE NULL 許容(char 型)と NULL 禁止(varchar 型) 表 10_7

No10_8.linq COALESCE NULL 許容(char 型)と文字列リテラル 表 10_8

No10_9.linq COALESCE NULL 許容(money 型)と NULL 許容(money 型) 表 10_9

No10_10.linq COALESCE NULL 禁止(datetime 型)と GETDATE()関数 表 10_10

No11.linq CONVERT NULL 許容(int 型)を varchar 型に変換する 表 11

No12.linq CONVERT NULL 許容(int 型)を decimal(5, 1)型に変換する 表 12

No12_2.linq CONVERT NULL 禁止(tinyint 型)を decimal(5, 1)型に変換する 表 12_2

No12_4.linq CONVERT NULL 許容(int 型)を decimal(5)型に変換する 表 12_4

No12_8.linq CONVERT NULL 許容(int 型)を int 型に変換する 表 12_8

No12_10.linq CONVERT NULL 許容(int 型)を money 型に変換する 表 12_10

No12_12.linq CONVERT NULL 許容(int 型)を datetime 型に変換する 表 12_12

No12_13.linq CONVERT NULL 禁止(tinyint 型)を datetime 型に変換する 表 12_13

No12_14.linq CONVERT NULL 禁止(decimal(4, 2)型)を int 型に変換する 表 12_14

No12_15.linq CONVERT NULL 禁止(decimal(4, 2)型)を decimal(5, 1)型に変換する 表 12_15

No12_16.linq CONVERT NULL 禁止(decimal(4, 2)型)を decimal(5)型に変換する 表 12_16

No12_17.linq CONVERT NULL 禁止(decimal(4, 2)型)を money 型に変換する 表 12_17

No12_18.linq CONVERT NULL 禁止(decimal(4, 2)型)を varchar 型に変換する 表 12_18

No12_19.linq CONVERT NULL 禁止(decimal(4, 2)型)を datetime 型に変換する 表 12_19

No12_20.linq CONVERT NULL 許容(money 型)を int 型に変換する 表 12_20

No12_21.linq CONVERT NULL 許容(money 型)を decimal(5, 1)型に変換する 表 12_21

No12_22.linq CONVERT NULL 許容(money 型)を decimal(5)型に変換する 表 12_22

No12_23.linq CONVERT NULL 許容(money 型)を money 型に変換する 表 12_23

No12_24.linq CONVERT NULL 許容(money 型)を varchar 型に変換する 表 12_24

No12_25.linq CONVERT NULL 許容(money 型)を datetime 型に変換する 表 12_25

No12_26.linq CONVERT NULL 許容(char 型)を int 型に変換する 表 12_26

No12_27.linq CONVERT NULL 許容(char 型)を int 型に変換する:NULL 出力 表 12_27

No12_28.linq CONVERT NULL 許容(char 型)を decimal(5, 1)型に変換する 表 12_28

No12_29.linq CONVERT NULL 禁止(char 型)を int 型に変換する 表 12_29

No12_30.linq CONVERT NULL 許容(char 型)を decimal(5)型に変換する 表 12_30

(4)

No12_32.linq CONVERT NULL 許容(char 型)を money 型に変換する 表 12_32

No12_33.linq CONVERT NULL 禁止(char 型)を money 型に変換する 表 12_33

No12_34.linq CONVERT NULL 許容(char 型)を varchar 型に変換する 表 12_34

No12_35.linq CONVERT NULL 禁止(char 型)を varchar 型に変換する 表 12_35

No12_36.linq CONVERT 文字列リテラルで表した時間を datetime 型に変換する 表 12_36

No12_37.linq CONVERT NULL 禁止(datetime 型)を int 型に変換する 表 12_37

No12_38.linq CONVERT NULL 禁止(datetime 型)を decimal(7, 1)型に変換する 表 12_38

No12_39.linq CONVERT NULL 禁止(datetime 型)を decimal(7)型に変換する 表 12_39

No12_40.linq CONVERT NULL 禁止(datetime 型)を money 型に変換する 表 12_40

No12_41.linq CONVERT NULL 禁止(datetime 型)を varchar 型に変換する 表 12_41

No12_42.linq CONVERT NULL 禁止(datetime 型)を datetime 型に変換する 表 12_42

No12_50.linq CONVERT NULL 禁止(datetime 型)を[yy/MM/dd]形式で

varchar 型に変換する

表 12_50

No12_51.linq CONVERT NULL 禁止(datetime 型)を[yyyy/MM/dd]形式で

varchar 型に変換する

表 12_51

No12_52.linq CONVERT NULL 禁止(datetime 型)を[yyyy-MM-dd HH:mm:ss]形式で

varchar 型に変換する(style=20)

表 12_52

No12_53.linq CONVERT NULL 禁止(datetime 型)を[yyyy-MM-dd HH:mm:ss]形式で

varchar 型に変換する(style=120)

表 12_53

No12_54.linq CONVERT (Northwind データベース)NULL 許容(datetime 型)を

[yy/MM/dd]形式で varchar 型に変換する

表 12_54

No12_55.linq CONVERT (Northwind データベース)NULL 許容(datetime 型)を

[yyyy/MM/dd]形式で varchar 型に変換する

表 12_55

No12_56.linq CONVERT (Northwind データベース)NULL 許容(datetime 型)を

[yyyy-MM-dd HH:mm:ss]形式で varchar 型に変換する (style=20)

表 12_56

No12_57.linq CONVERT (Northwind データベース)NULL 許容(datetime 型)を

[yyyy-MM-dd HH:mm:ss]形式で varchar 型に変換する (style=120)

表 12_57

No12_60.linq CONVERT 文字列リテラルで表した時間([yy/MM/dd]形式)を

datetime 型に変換する

表 12_60

No12_61.linq CONVERT 文字列リテラルで表した時間([yyyy/MM/dd]形式)を

datetime 型に変換する

表 12_61

No12_62.linq CONVERT 文字列リテラルで表した時間([yyyy-MM-dd HH:mm:ss]形式)

を datetime 型に変換する(style=20)

表 12_62

No12_63.linq CONVERT 文字列リテラルで表した時間([yyyy-MM-dd HH:mm:ss]形式)

を datetime 型に変換する(style=120)

表 12_63

No12_70.linq CONVERT NULL 許容(money 型)を位取り無しで小数 2 桁の

varchar 型に変換する

表 12_70

No12_71.linq CONVERT NULL 許容(money 型)を位取り有りで小数 2 桁の

varchar 型に変換する

表 12_71

(5)

varchar 型に変換する

TopPage

ファイル名 No1.linq

関数名 ABS

引数の説明 NULL 許容(highqty:smallint 型)と NULL 禁止(discount:decimal 型)

T-SQL SELECT discounttype, ABS(highqty) AS high, ABS(discount1) AS dis

FROM discounts WHERE lowqty = 100 LINQ コード /* LINQ to SQL と異なる */ discounts .Where(x1 => x1.lowqty == 100) .Select(x1 => new { x1.discounttype, high = ((int?)Math.Abs((int)(x1.highqty))), dis = Math.Abs(x1.discount1) });

TopPage

ファイル名 No1_2.linq 関数名 ABS

引数の説明 NULL 許容(highqty:smallint 型)と NULL 禁止(discount:decimal 型):NULL 出力

T-SQL SELECT discounttype, ABS(highqty) AS high, ABS(discount1) AS dis

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, high = ((int?)Math.Abs((int)(x1.highqty))), dis = Math.Abs(x1.discount1) });

TopPage

ファイル名 No1_3.linq 関数名 ABS

引数の説明 NULL 許容(highqty:smallint 型)と NULL 禁止(discount:decimal 型):1 加算

T-SQL SELECT discounttype, ABS(highqty) + 1 AS high, ABS(discount1) + 1 AS dis

FROM discounts

LINQ コード /* LINQ to SQL と異なる */

discounts

(6)

{ x1.discounttype, high = ((int?)Math.Abs((int)(x1.highqty))) + 1, dis = Math.Abs(x1.discount1) + 1 });

TopPage

ファイル名 No2.linq 関数名 ABS 引数の説明 数値リテラル

T-SQL SELECT discounttype, ABS(-10) AS high, ABS(11.1) AS dis

FROM discounts WHERE lowqty = 100 LINQ コード /* LINQ to SQL と同一 */ discounts .Where(x1 => x1.lowqty == 100) .Select(x1 => new { x1.discounttype, high = Math.Abs( -10), dis = Math.Abs(11.1m) });

TopPage

ファイル名 No3.linq 関数名 ASCII 引数の説明 NULL 禁止(varchar 型)

T-SQL SELECT au_id, ASCII(au_id) AS code

FROM titleauthors WHERE au_id = '172-32-1176' LINQ コード /* LINQ to SQL と異なる */ titleauthors .Where(x1 => x1.au_id == "172-32-1176") .Select(x1 => new { x1.au_id, code = System.Data.Objects.SqlClient.SqlFunctions.Ascii(x1.au_id) });

TopPage

ファイル名 No3_2.linq 関数名 ASCII 引数の説明 NULL 許容(char 型)

(7)

T-SQL SELECT stor_id, ASCII(stor_id) + 1 AS code FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.stor_id, code = System.Data.Objects.SqlClient.SqlFunctions.Ascii(x1.au_id) + 1 });

TopPage

ファイル名 No4.linq 関数名 ASCII 引数の説明 文字列リテラル

T-SQL SELECT au_id, ASCII('172-32-1176') AS code

FROM titleauthors WHERE au_id = '172-32-1176' LINQ コード /* LINQ to SQL と異なる */ titleauthors .Where(x1 => x1.au_id == "172-32-1176") .Select(x1 => new { x1.au_id, code = System.Data.Objects.SqlClient.SqlFunctions.Ascii("172-32-1176") });

TopPage

ファイル名 No5.linq 関数名 AVG 引数の説明 NULL 許容(money 型)

T-SQL SELECT pub_id, AVG(price) AS price

FROM titles GROUP BY pub_id

HAVING pub_id = '0736'

LINQ コード /* LINQ to SQL と同一 */

titles

.GroupBy(x1 => new{grKey1 = x1.pub_id}) .Where(g1 => g1.Key.grKey1 == "0736") .Select(g1 => new

{

pub_id = g1.Key.grKey1,

price = g1.Average(x1 => x1.price) });

(8)

TopPage

ファイル名 No6.linq

関数名 CAST

引数の説明 NULL 許容(int 型)を varchar 型に変換する

T-SQL SELECT au_id, royaltyper, CAST(royaltyper AS varchar) AS string1

FROM titleauthors WHERE au_id = '172-32-1176' LINQ コード /* LINQ to SQL と異なる */ titleauthors .Where(x1 => x1.au_id == "172-32-1176") .Select(x1 => new { x1.au_id, x1.royaltyper, string1 = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( ((decimal)(x1.royaltyper))

});

TopPage

ファイル名 No6_2.linq 関数名 CAST

引数の説明 NULL 許容(int 型)を varchar 型に変換する:NULL 出力

T-SQL SELECT title_id, royalty, CAST(royalty AS varchar) + ' a' AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( ((decimal)(x1.royalty)) + " a" });

TopPage

ファイル名 No6_3.linq 関数名 CAST

引数の説明 NULL 禁止(tinyint 型)を varchar 型に変換する

T-SQL SELECT min_lvl, CAST(min_lvl AS varchar) + ' 1' AS strRoyalty

FROM jobs

(9)

jobs .Select(x1 => new { x1.min_lvl, strRoyalty = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( ((decimal)(x1.min_lvl)) + " 1"

});

TopPage

ファイル名 No7.linq 関数名 CAST

引数の説明 NULL 許容(int 型)を decimal(5, 2)型に変換する

T-SQL SELECT au_id, royaltyper, CAST(royaltyper AS decimal(5,2)) AS string1

FROM titleauthors WHERE au_id = '172-32-1176' LINQ コード /* LINQ to SQL と異なる */ titleauthors .Where(x1 => x1.au_id == "172-32-1176") .Select(x1 => new { x1.au_id, x1.royaltyper, string1 = ((decimal?)Math.Round((decimal)(x1.royaltyper), 2)) });

TopPage

ファイル名 No7_2.linq 関数名 CAST

引数の説明 NULL 禁止(tinyint 型)を decimal(5, 2)型に変換する

T-SQL SELECT min_lvl, CAST(min_lvl AS decimal(5,2)) AS string1

FROM jobs LINQ コード /* LINQ to SQL と異なる */ jobs .Select(x1 => new { x1.min_lvl, string1 = Math.Round((decimal)(x1.min_lvl), 2) });

TopPage

ファイル名 No7_3.linq 関数名 CAST

(10)

引数の説明 NULL 許容(int 型)を decimal(5, 2)型に変換する:NULL 出力

T-SQL SELECT title_id, royalty, CAST(royalty AS decimal(5, 2)) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = ((decimal?)Math.Round((decimal)(x1.royalty), 2)) });

TopPage

ファイル名 No7_4.linq 関数名 CAST

引数の説明 NULL 許容(int 型)を decimal(5)型に変換する

T-SQL SELECT title_id, royalty, CAST(royalty AS decimal(5)) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = ((decimal?)Math.Round((decimal)(x1.royalty), 0)) });

TopPage

ファイル名 No7_5.linq 関数名 CAST

引数の説明 NULL 許容(int 型)を decimal 型に変換する

T-SQL SELECT title_id, royalty, CAST(royalty AS decimal) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = ((decimal?)Math.Round((decimal)(x1.royalty), 0))

(11)

});

TopPage

ファイル名 No7_6.linq

関数名 CAST

引数の説明 NULL 禁止(tinyint 型)を decimal(5)型に変換する

T-SQL SELECT min_lvl, CAST(min_lvl AS decimal(5)) AS string1

FROM jobs LINQ コード /* LINQ to SQL と異なる */ jobs .Select(x1 => new { x1.min_lvl, string1 = Math.Round((decimal)(x1.min_lvl), 0) });

TopPage

ファイル名 No7_7.linq 関数名 CAST

引数の説明 NULL 禁止(tinyint 型)を decimal 型に変換する

T-SQL SELECT min_lvl, CAST(min_lvl AS decimal) AS string1

FROM jobs LINQ コード /* LINQ to SQL と異なる */ jobs .Select(x1 => new { x1.min_lvl, string1 = Math.Round((decimal)(x1.min_lvl), 0) });

TopPage

ファイル名 No7_8.linq 関数名 CAST

引数の説明 NULL 許容(int 型)を int 型に変換する

T-SQL SELECT title_id, royalty, CAST(royalty AS int) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles

.Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new

(12)

x1.title_id, x1.royalty, string1 = (x1.royalty) });

TopPage

ファイル名 No7_9 関数名 CAST

引数の説明 NULL 禁止(tinyint 型)を int 型に変換する

T-SQL SELECT min_lvl, cast(min_lvl AS int) AS string1

FROM jobs LINQ コード /* LINQ to SQL と同一 */ jobs .Select(x1 => new { x1.min_lvl, string1 = (x1.min_lvl) });

TopPage

ファイル名 No7_10.linq 関数名 CAST

引数の説明 NULL 許容(int 型)を money 型に変換する

T-SQL SELECT title_id, royalty, CAST(royalty AS money) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = ((decimal?)(x1.royalty)) });

TopPage

ファイル名 No7_11.linq 関数名 CAST

引数の説明 NULL 禁止(tinyint 型)を money 型に変換する

T-SQL SELECT min_lvl, cast(min_lvl AS money) AS string1

(13)

LINQ コード /* LINQ to SQL と同一 */ jobs .Select(x1 => new { x1.min_lvl, string1 = (decimal)(x1.min_lvl) });

TopPage

ファイル名 No7_12.linq 関数名 CAST

引数の説明 NULL 許容(int 型)を datetime 型に変換する

T-SQL SELECT title_id, royalty, CAST(royalty AS datetime) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = System.Data.Objects.SqlClient.SqlFunctions.DateAdd( "day", x1.royalty, "1900/01/01") });

TopPage

ファイル名 No7_13.linq 関数名 CAST

引数の説明 NULL 禁止(tinyint 型)を datetime 型に変換する

T-SQL SELECT min_lvl, CAST(min_lvl AS datetime) AS string1

FROM jobs LINQ コード /* LINQ to SQL と異なる */ jobs .Select(x1 => new { x1.min_lvl, string1 = System.Data.Objects.SqlClient.SqlFunctions.DateAdd( "day", x1.min_lvl, "1900/01/01") });

TopPage

ファイル名 No7_14.linq

(14)

関数名 CAST

引数の説明 NULL 禁止(decimal(4, 2)型)を int 型に変換する

T-SQL SELECT discounttype, discount1, CAST(discount1 AS int) AS value

FROM discounts

LINQ コード /* LINQ to SQL と異なる(discount1 のみ) */

discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = (int)(x1.discount1) });

TopPage

ファイル名 No7_15.linq 関数名 CAST

引数の説明 NULL 禁止(decimal(4, 2)型)を decimal(5, 1)型に変換する

T-SQL SELECT discounttype, discount1, CAST(discount1 AS decimal(5, 1)) AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = Math.Round((decimal)(x1.discount1), 1) });

TopPage

ファイル名 No7_16.linq 関数名 CAST

引数の説明 NULL 禁止(decimal(4, 2)型)を decimal(5)型に変換する

T-SQL SELECT discounttype, discount1, CAST(discount1 AS decimal(5)) AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = Math.Round((decimal)(x1.discount1), 0) });

TopPage

(15)

ファイル名 No7_17.linq

関数名 CAST

引数の説明 NULL 禁止(decimal(4, 2)型)を money 型に変換する

T-SQL SELECT discounttype, discount1, CAST(discount1 AS money) AS value

FROM discounts

LINQ コード /* LINQ to SQL と異なる(discount1 のみ) */

discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = (decimal)(x1.discount1) });

TopPage

ファイル名 No7_18.linq 関数名 CAST

引数の説明 NULL 禁止(decimal(4, 2)型)を varchar 型に変換する

T-SQL SELECT discounttype, discount1, CAST(discount1 AS varchar) + ' 1' AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( (decimal)(x1.discount1), 5, 2) + " 1" });

TopPage

ファイル名 No7_19.linq 関数名 CAST

引数の説明 NULL 禁止(decimal(4, 2)型)を datetime 型に変換する

T-SQL SELECT discounttype, discount1, CAST(discount1 AS datetime) AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = System.Data.Objects.SqlClient.SqlFunctions.DateAdd(

(16)

"day", (double)x1.discount1, "1900/01/01") });

TopPage

ファイル名 No7_20.linq

関数名 CAST

引数の説明 NULL 許容(money 型)を int 型に変換する

T-SQL SELECT title_id, price, CAST(price AS int) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = ((int?)(x1.price)) });

TopPage

ファイル名 No7_21.linq 関数名 CAST

引数の説明 NULL 許容(money 型)を decimal(5, 1)型に変換する

T-SQL SELECT title_id, price, CAST(price AS decimal(5, 1)) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = ((decimal?)Math.Round((decimal)(x1.price), 1)) });

TopPage

ファイル名 No7_22.linq 関数名 CAST

引数の説明 NULL 許容(money 型)を decimal(5)型に変換する

(17)

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = ((decimal?)Math.Round((decimal)(x1.price), 0)) });

TopPage

ファイル名 No7_23.linq 関数名 CAST

引数の説明 NULL 許容(money 型)を money 型に変換する

T-SQL SELECT title_id, price, CAST(price AS money) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = (x1.price) });

TopPage

ファイル名 No7_24.linq 関数名 CAST

引数の説明 NULL 許容(money 型)を varchar 型に変換する

T-SQL SELECT title_id, price, CAST(price AS varchar) + ' 1' AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( (decimal)(x1.price), 19, 4) + " 1"

(18)

});

TopPage

ファイル名 No7_25.linq

関数名 CAST

引数の説明 NULL 許容(money 型)を datetime 型に変換する

T-SQL SELECT title_id, price, CAST(price AS datetime) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = System.Data.Objects.SqlClient.SqlFunctions.DateAdd( "day", (double)(x1.price), "1900/01/01") });

TopPage

ファイル名 No7_26.linq 関数名 CAST

引数の説明 NULL 許容(char 型)を int 型に変換する

T-SQL SELECT discounttype, stor_id, CAST(stor_id AS int) AS value

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id,

value = x1.stor_id == null ? null : (int?)int.Parse(x1.stor_id) });

TopPage

ファイル名 No7_27.linq

関数名 CAST

引数の説明 NULL 許容(char 型)を int 型に変換する:1 加算

T-SQL SELECT discounttype, stor_id, CAST(stor_id AS int) + 1 AS value

(19)

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は 警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .ToList() .Select(x1 => new { x1.discounttype, x1.stor_id,

value = (x1.stor_id == null ? null : (int?)int.Parse(x1.stor_id)) + 1 });

TopPage

ファイル名 No7_28.linq

関数名 CAST

引数の説明 NULL 許容(char 型)を decial(5, 1)型に変換する

T-SQL SELECT discounttype, stor_id, CAST(stor_id AS decimal(5, 1)) AS value

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id,

value = (x1.stor_id == null ? null : (decimal?)Math.Round((decimal) ((decimal?)decimal.Parse(x1.stor_id)), 1))

});

TopPage

ファイル名 No7_29.linq

関数名 CAST

引数の説明 NULL 禁止(char 型)を int 型に変換する

T-SQL SELECT pub_id, country, cast(pub_id AS int) AS value

FROM publishers

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = int.Parse(x1.pub_id) });

(20)

TopPage

ファイル名 No7_30.linq

関数名 CAST

引数の説明 NULL 許容(char 型)を decimal(5)型に変換する

T-SQL SELECT discounttype, stor_id, CAST(stor_id AS decimal(5)) AS value

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .ToList() .Select(x1 => new { x1.discounttype, x1.stor_id,

value = (x1.stor_id == null ? null : (decimal?)Math.Round((decimal) ((decimal?)decimal.Parse(x1.stor_id)), 0))

});

TopPage

ファイル名 No7_31.linq

関数名 CAST

引数の説明 NULL 禁止(char 型)を decimal(5, 1)型に変換する

T-SQL SELECT pub_id, country, CAST(pub_id AS decimal(5, 1)) AS value

FROM publishers

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = Math.Round((decimal)(decimal.Parse(x1.pub_id)), 1) });

TopPage

ファイル名 No7_32.linq 関数名 CAST

引数の説明 NULL 許容(char 型)を money 型に変換する

T-SQL SELECT discounttype, stor_id, CAST(stor_id AS money) AS value

(21)

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は 警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id,

value = (x1.stor_id == null ? null :

(decimal?)decimal.Parse(x1.stor_id)) });

TopPage

ファイル名 No7_33.linq

関数名 CAST

引数の説明 NULL 禁止(char 型)を money 型に変換する

T-SQL SELECT pub_id, country, CAST(pub_id AS money) AS value

FROM publishers

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = decimal.Parse(x1.pub_id) });

TopPage

ファイル名 No7_34.linq 関数名 CAST

引数の説明 NULL 許容(char 型)を varchar 型に変換する

T-SQL SELECT discounttype, stor_id, CAST(stor_id AS varchar) AS value

FROM discounts LINQ コード /* LINQ to SQL と同一 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id, value = (x1.stor_id) });

TopPage

(22)

ファイル名 No7_35.linq

関数名 CAST

引数の説明 NULL 禁止(char 型)を varchar 型に変換する

T-SQL SELECT pub_id, country, cast(pub_id AS varchar) AS value

FROM publishers LINQ コード /* LINQ to SQL と同一 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = (x1.pub_id) });

TopPage

ファイル名 No7_36.linq 関数名 CAST 引数の説明 文字列リテラルで表した時間を datetime 型に変換する

T-SQL SELECT pub_id, country, CAST('10/08/23 18:33:44' AS datetime) AS value

FROM publishers LINQ コード /* LINQ to SQL と異なる */ publishers .Select(x1 => new { x1.pub_id, x1.country,

value = new DateTime(10, 08, 23, 18, 33, 44) });

TopPage

ファイル名 No7_37.linq

関数名 CAST

引数の説明 NULL 禁止(datetime 型)を int 型に変換する

T-SQL SELECT stor_id, ord_date, CAST(ord_date AS int) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と異なる */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date,

(23)

value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No7_38.linq 関数名 CAST

引数の説明 NULL 禁止(datetime 型)を decimal(7, 1)型に変換する

T-SQL SELECT stor_id, ord_date, CAST(ord_date AS decimal(7, 1)) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と異なる */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No7_39.linq 関数 CAST

引数の説明 NULL 禁止(datetime 型)を decimal(7)型に変換する

T-SQL SELECT stor_id, ord_date, CAST(ord_date AS decimal(7)) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と異なる */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No7_40.linq 関数名 CAST

(24)

引数の説明 NULL 禁止(datetime 型)を money 型に変換する

T-SQL SELECT stor_id, ord_date, CAST(ord_date AS money) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と異なる */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No7_41.linq 関数名 CAST

引数の説明 NULL 禁止(datetime 型)を varchar 型に変換する

T-SQL SELECT stor_id, ord_date, CAST(ord_date AS varchar) AS value

FROM sales

WHERE stor_id = '6380'

LINQ コード /* LINQ to Entities では、ToString メソッドは認識されないため、SQLCompiler

は警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = (x1.ord_date).ToString() });

TopPage

ファイル名 No7_42.linq 関数名 CAST

引数の説明 NULL 禁止(datetime 型)を datetime 型に変換する

T-SQL SELECT stor_id, ord_date, cast(ord_date AS datetime) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と同一 */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new

(25)

{ x1.stor_id, x1.ord_date, value = (x1.ord_date) });

TopPage

ファイル名 No8.linq 関数名 CEILING 引数の説明 NULL 許容(money 型)

T-SQL SELECT price, CEILING(price) AS price

FROM titles WHERE pub_id = '0736' LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => x1.pub_id == "0736") .Select(x1 => new { root_alias_1 = x1.price, root_alias_2 = ((decimal?)Math.Ceiling((decimal)(x1.price))) });

TopPage

ファイル名 No8_2.linq 関数名 CEILING

引数の説明 NULL 許容(money 型):NULL 出力

T-SQL SELECT price, CEILING(price) AS price

FROM titles WHERE pub_id = '1389' LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => x1.pub_id == "1389") .Select(x1 => new { root_alias_1 = x1.price, root_alias_2 = ((decimal?)Math.Ceiling((decimal)(x1.price))) });

TopPage

ファイル名 No8_3.linq 関数名 CEILING 引数の説明 NULL 禁止(decimal(4, 2)型)

(26)

FROM discounts

LINQ コード /* LINQ to SQL と異なる(discount1 のみ) */

discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = Math.Ceiling(x1.discount1) });

TopPage

ファイル名 No9.linq 関数名 CHAR 引数の説明 NULL 許容(int 型)

T-SQL SELECT royaltyper, CHAR(royaltyper)

FROM titleauthors LINQ コード /* LINQ to SQL と異なる */ titleauthors .Select(x1 => new { x1.royaltyper, root_alias_2 = (System.Data.Objects.SqlClient.SqlFunctions.Char( x1.royaltyper)) });

TopPage

ファイル名 No9_2.linq 関数名 CHAR

引数の説明 NULL 許容(int 型):NULL 出力

T-SQL SELECT discounttype, lowqty, CHAR(lowqty) AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.lowqty, value = (System.Data.Objects.SqlClient.SqlFunctions.Char(x1.lowqty)) });

TopPage

ファイル名 No9_3.linq 関数名 CHAR

(27)

引数の説明 NULL 禁止(tinyint 型)

T-SQL SELECT min_lvl, CHAR(min_lvl) AS value

FROM jobs LINQ コード /* LINQ to SQL と異なる */ jobs .Select(x1 => new { x1.min_lvl, value = System.Data.Objects.SqlClient.SqlFunctions.Char(x1.min_lvl) });

TopPage

ファイル名 No10.linq 関数名 COALESCE 引数の説明 NULL 許容(money 型)と 0.0

T-SQL SELECT pub_id, COALESCE(price, 0.0) AS price

FROM titles WHERE pub_id = '1389' LINQ コード /* LINQ to SQL と同一 */ titles .Where(x1 => x1.pub_id == "1389") .Select(x1 => new { x1.pub_id,

price = x1.price != null ? x1.price : 0.0m == 0.0m ? 0.0m : 1

});

TopPage

ファイル名 No10_2.linq

関数名 COALESCE

引数の説明 NULL 許容(money 型)と 0

T-SQL SELECT pub_id, COALESCE(price, 0) AS price

FROM titles WHERE pub_id = '1389' LINQ コード /* LINQ to SQL と同一 */ titles .Where(x1 => x1.pub_id == "1389") .Select(x1 => new { x1.pub_id,

price = x1.price != null ? x1.price : 0 == 0 ? 0 : 1

});

(28)

ファイル名 No10_3.linq

関数名 COALESCE

引数の説明 NULL 許容(money 型)と 0 と NULL 許容(money 型)

T-SQL SELECT pub_id, COALESCE(price, 0, advance) AS price

FROM titles WHERE pub_id = '1389' LINQ コード /* LINQ to SQL と同一 */ titles .Where(x1 => x1.pub_id == "1389") .Select(x1 => new { x1.pub_id,

price = x1.price != null ? x1.price : 0 == 0 ? 0 : x1.advance !=

null ? x1.advance : null });

TopPage

ファイル名 No10_4.linq

関数名 COALESCE

引数の説明 NULL 許容(money 型)と 0.0 と NULL 許容(money 型)

T-SQL SELECT pub_id, COALESCE(price, 0.0, advance) AS price

FROM titles WHERE pub_id = '1389' LINQ コード /* LINQ to SQL と同一 */ titles .Where(x1 => x1.pub_id == "1389") .Select(x1 => new { x1.pub_id,

price = x1.price != null ? x1.price : 0.0 == 0.0 ? 0.0m : x1.advance

!= null ? x1.advance : null });

TopPage

ファイル名 No10_5.linq

関数名 COALESCE

引数の説明 NULL 許容(money 型)と 0 と NULL 許容(int 型)

T-SQL SELECT pub_id, COALESCE(price, 0, royalty) AS price

FROM titles

WHERE pub_id = '1389'

LINQ コード /* LINQ to SQL と同一 */

(29)

.Where(x1 => x1.pub_id == "1389") .Select(x1 => new

{

x1.pub_id,

price = x1.price != null ? x1.price : 0 == 0 ? 0 : x1.royalty != null ? x1.royalty : null

});

TopPage

ファイル名 No10_7.linq

関数名 COALESCE

引数の説明 NULL 許容(char 型)と NULL 禁止(varchar 型)

T-SQL SELECT stor_id, discounttype, COALESCE(stor_id, discounttype) AS price

FROM discounts LINQ コード /* LINQ to SQL と同一 */ discounts .Select(x1 => new { x1.stor_id, x1.discounttype,

price = x1.stor_id != null ? x1.stor_id : x1.discounttype != null ? x1.discounttype : "A"

});

TopPage

ファイル名 No10_8.linq

関数名 COALESCE

引数の説明 NULL 許容(char 型)と文字列リテラル

T-SQL SELECT stor_id, discounttype, COALESCE(stor_id, 'null') AS price

FROM discounts LINQ コード /* LINQ to SQL と同一 */ discounts .Select(x1 => new { x1.stor_id, x1.discounttype,

price = x1.stor_id != null ? x1.stor_id : "null" == "null" ? "null" : "A"

});

TopPage

ファイル名 No10_9.linq

(30)

引数の説明 NULL 許容(money 型)と NULL 許容(money 型)

T-SQL SELECT pub_id, COALESCE(price, advance) AS price

FROM titles WHERE pub_id = '1389' LINQ コード /* LINQ to SQL と同一 */ titles .Where(x1 => x1.pub_id == "1389") .Select(x1 => new { x1.pub_id,

price = x1.price != null ? x1.price : x1.advance != null ? x1.advance : null

});

TopPage

ファイル名 No10_10.linq

関数名 COALESCE

引数の説明 NULL 禁止(datetime 型)と GETDATE()関数

T-SQL SELECT pub_id, COALESCE(pubdate, GETDATE()) AS price

FROM titles WHERE pub_id = '1389' LINQ コード /* LINQ to SQL と同一 */ titles .Where(x1 => x1.pub_id == "1389") .Select(x1 => new { x1.pub_id,

price = x1.pubdate != null ? x1.pubdate : DateTime.Now == DateTime.Now ? DateTime.Now : DateTime.Now

});

TopPage

ファイル名 No11.linq

関数名 CONVERT

引数の説明 NULL 許容(int 型)を varchar 型に変換する

T-SQL SELECT au_id, royaltyper, CONVERT(varchar, royaltyper) AS string1

FROM titleauthors WHERE au_id = '172-32-1176' LINQ コード /* LINQ to SQL と異なる */ titleauthors .Where(x1 => x1.au_id == "172-32-1176") .Select(x1 => new { x1.au_id, x1.royaltyper,

(31)

string1 = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( (decimal)(x1.royaltyper)) });

TopPage

ファイル名 No12.linq 関数名 CONVERT

引数の説明 NULL 許容(int 型)を decimal(5, 1)型に変換する

T-SQL SELECT au_id, royaltyper, CONVERT(decimal(5,1), royaltyper) AS string1

FROM titleauthors WHERE au_id = '172-32-1176' LINQ コード /* LINQ to SQL と異なる */ titleauthors .Where(x1 => x1.au_id == "172-32-1176") .Select(x1 => new { x1.au_id, x1.royaltyper, string1 = ((decimal?)Math.Round((decimal)(x1.royaltyper), 1)) });

TopPage

ファイル名 No12_2.linq 関数名 CONVERT

引数の説明 NULL 禁止(tinyint 型)を decimal(5, 1)型に変換する

T-SQL SELECT min_lvl, CONVERT(decimal(5,1), min_lvl) AS string1

FROM jobs LINQ /* LINQ to SQL と異なる */ jobs .Select(x1 => new { x1.min_lvl, string1 = Math.Round((decimal)x1.min_lvl, 1) });

TopPage

ファイル名 No12_4.linq 関数名 CONVERT

引数の説明 NULL 許容(int 型)を decimal(5)型に変換する

T-SQL SELECT title_id, royalty, CONVERT(decimal(5), royalty) AS string1

FROM titles

(32)

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = ((decimal?)Math.Round((decimal)(x1.royalty), 0)) });

TopPage

ファイル名 No12_8.linq 関数名 CONVERT

引数の説明 NULL 許容(int 型)を int 型に変換する

T-SQL SELECT title_id, royalty, CONVERT(int, royalty) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = (x1.royalty) });

TopPage

ファイル名 No12_10.linq 関数名 CONVERT

引数の説明 NULL 許容(int 型)を money 型に変換する

T-SQL SELECT title_id, royalty, CONVERT(money, royalty) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = ((decimal?)(x1.royalty)) });

TopPage

(33)

ファイル名 No12_12.linq

関数名 CONVERT

引数の説明 NULL 許容(int 型)を datetime 型に変換する

T-SQL SELECT title_id, royalty, CONVERT(datetime, royalty) AS string1

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartWith("MC")) .Select(x1 => new { x1.title_id, x1.royalty, string1 = System.Data.Objects.SqlClient.SqlFunctions.DateAdd( "day", x1.royalty, "1900/01/01") });

TopPage

ファイル名 No12_13.linq 関数名 CONVERT

引数の説明 NULL 禁止(tinyint 型)を datetime 型に変換する

T-SQL SELECT min_lvl, CONVERT(datetime, min_lvl) AS string1

FROM jobs LINQ コード /* LINQ to SQL と異なる */ jobs .Select(x1 => new { x1.min_lvl, string1 = System.Data.Objects.SqlClient.SqlFunctions.DateAdd( "day", x1.min_lvl, "1900/01/01") });

TopPage

ファイル名 No12_14.linq 関数名 CONVERT

引数の説明 NULL 禁止(decimal(4, 2)型)を int 型に変換する

T-SQL SELECT discounttype, discount1, CONVERT(int, discount1) AS value

FROM discounts

LINQ コード /* LINQ to SQL と異なる(discount1 のみ) */

discounts

.Select(x1 => new {

(34)

x1.discount1, value = (int)(x1.discount1) });

TopPage

ファイル名 No12_15.linq 関数名 CONVERT

引数の説明 NULL 禁止(decimal(4, 2)型)を decimal(5, 1)型に変換する

T-SQL SELECT discounttype, discount1, CONVERT(decimal(5, 1), discount1) AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount, value = Math.Round((decimal)(x1.discount), 1) });

TopPage

ファイル名 No12_16.linq 関数名 CONVERT

引数の説明 NULL 禁止(decimal(4, 2)型)を decimal(5)型に変換する

T-SQL SELECT discounttype, discount1, CONVERT(decimal(5), discount1) AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = Math.Round((decimal)(x1.discount1), 0) });

TopPage

ファイル名 No12_17.linq 関数名 CONVERT

引数の説明 NULL 禁止(decimal(4, 2)型)を money 型に変換する

T-SQL SELECT discounttype, discount1, CONVERT(money, discount1) AS value

FROM discounts

LINQ コード /* LINQ to SQL と異なる */

(35)

.Select(x1 => new { x1.discounttype, x1.discount1, value = (x1.discount1) });

TopPage

ファイル名 No12_18.linq 関数名 CONVERT

引数の説明 NULL 禁止(decimal(4, 2)型)を varchar 型に変換する

T-SQL SELECT discounttype, discount1, CONVERT(varchar, discount1) + ' 1' AS

value FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( (decimal)(x1.discount1), 5, 2) + " 1" });

TopPage

ファイル名 No12_19.linq 関数名 CONVERT

引数の説明 NULL 禁止(decimal(4, 2)型)を datetime 型に変換する

T-SQL SELECT discounttype, discount1, CONVERT(datetime, discount1) AS value

FROM discounts LINQ コード /* LINQ to SQL と異なる */ discounts .Select(x1 => new { x1.discounttype, x1.discount1, value = System.Data.Objects.SqlClient.SqlFunctions.DateAdd( "day", (double)x1.discount1, "1900/01/01") });

TopPage

ファイル名 No12_20.linq 関数名 CONVERT

(36)

引数の説明 NULL 許容(money 型)を int 型に変換する

T-SQL SELECT title_id, price, CONVERT(int, price) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = (int?)(x1.price) });

TopPage

ファイル名 No12_21.linq 関数名 CONVERT

引数の説明 NULL 許容(money 型)を decimal(5, 1)型に変換する

T-SQL SELECT title_id, price, CONVERT(decimal(5, 1), price) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = ((decimal?)Math.Round((decimal)(x1.price), 1)) });

TopPage

ファイル名 No12_22.linq 関数名 CONVERT

引数の説明 NULL 許容(money 型)を decimal(5)型に変換する

T-SQL SELECT title_id, price, CONVERT(decimal(5), price) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price,

(37)

value = ((decimal?)Math.Round((decimal)(x1.price), 0)) });

TopPage

ファイル名 No12_23.linq

関数名 CONVERT

引数の説明 NULL 許容(money 型)を money 型に変換する

T-SQL SELECT title_id, price, CONVERT(money, price) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = (x1.price) });

TopPage

ファイル名 No12_24.linq 関数名 CONVERT

引数の説明 NULL 許容(money 型)を varchar 型に変換する

T-SQL SELECT title_id, price, CONVERT(varchar, price) + ' 1' AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = System.Data.Objects.SqlClient.SqlFunctions.StringConvert( (decimal)(x1.price), 5, 2) + " 1" });

TopPage

ファイル名 No12_25.linq 関数名 CONVERT

引数の説明 NULL 許容(money 型)を datetime 型に変換する

(38)

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる */ titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.title_id, x1.price, value = System.Data.Objects.SqlClient.SqlFunctions.DateAdd( "day", (double)x1.price, "1900/01/01") });

TopPage

ファイル名 No12_26.linq 関数名 CONVERT

引数の説明 NULL 許容(char 型)を int 型に変換する

T-SQL SELECT discounttype, stor_id, CONVERT(int, stor_id) AS value

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id,

value = x1.stor_id == null ? null : (int?)int.Parse(x1.stor_id) });

TopPage

ファイル名 No12_27.linq

関数名 CONVERT

引数の説明 NULL 許容(char 型)を int 型に変換する:1 加算

T-SQL SELECT discounttype, stor_id, CONVERT(int, stor_id) + 1 AS value

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id,

(39)

value = (x1.stor_id == null ? null : (int?)int.Parse(x1.stor_id)) + 1 });

TopPage

ファイル名 No12_28.linq

関数名 CONVERT

引数の説明 NULL 許容(char 型)を decimal(5, 1)型に変換する

T-SQL SELECT discounttype, stor_id, CONVERT(decimal(5, 1), stor_id) AS value

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id,

value = (x1.stor_id == null ? null : (decimal?)Math.Round( (decimal)((decimal?)decimal.Parse(x1.stor_id)), 1)) });

TopPage

ファイル名 No12_29.linq

関数名 CONVERT

引数の説明 NULL 禁止(char 型)を int 型に変換する

T-SQL SELECT pub_id, country, CONVERT(int, pub_id) AS value

FROM publishers

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = int.Parse(x1.pub_id) });

TopPage

ファイル名 No12_30.linq 関数名 CONVERT

引数の説明 NULL 許容(char 型)を decimal(5)型に変換する

(40)

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .ToList() .Select(x1 => new { x1.discounttype, x1.stor_id,

value = (x1.stor_id == null ? null : (decimal?)Math.Round( (decimal)((decimal?)decimal.Parse(x1.stor_id)), 0)) });

TopPage

ファイル名 No12_31.linq

関数名 CONVERT

引数の説明 NULL 禁止(char 型)を decimal(5, 1)型に変換する

T-SQL SELECT pub_id, country, CONVERT(decimal(5, 1), pub_id) AS value

FROM publishers

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = Math.Round((decimal)(decimal.Parse(x1.pub_id)), 1) });

TopPage

ファイル名 No12_32.linq 関数名 CONVERT

引数の説明 NULL 許容(char 型)を money 型に変換する

T-SQL SELECT discounttype, stor_id, CONVERT(money, stor_id) AS value

FROM discounts

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id,

(41)

value = x1.stor_id == null ? null : (decimal?)decimal.Parse(x1.stor_id) });

TopPage

ファイル名 No12_33.linq 関数名 CONVERT

引数の説明 NULL 禁止(char 型)を money 型に変換する

T-SQLL SELECT pub_id, country, CONVERT(money, pub_id) AS value

FROM publishers

LINQ コード /* LINQ to Entities では、Parse メソッドは認識されないため、SQLCompiler は

警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = decimal.Parse(x1.pub_id) });

TopPage

ファイル名 No12_34.linq 関数名 CONVERT

引数の説明 NULL 許容(char 型)を varchar 型に変換する

T-SQL SELECT discounttype, stor_id, CONVERT(varchar, stor_id) AS value

FROM discounts LINQ コード /* LINQ to SQL と同一 */ discounts .Select(x1 => new { x1.discounttype, x1.stor_id, value = (x1.stor_id) });

TopPage

ファイル名 No12_35.linq 関数名 CONVERT

引数の説明 NULL 禁止(char 型)を varchar 型に変換する

T-SQL SELECT pub_id, country, CONVERT(varchar, pub_id) AS value

(42)

LINQ コード /* LINQ to SQL と同一 */ publishers .Select(x1 => new { x1.pub_id, x1.country, value = (x1.pub_id) });

TopPage

ファイル名 No12_36.linq 関数名 CONVERT 引数の説明 文字列リテラルで表した時間を datetime 型に変換する

T-SQL SELECT pub_id, country, CONVERT(datetime, '10/08/23 18:33:44') AS value

FROM publishers LINQ コード /* LINQ to SQL と異なる */ publishers .Select(x1 => new { x1.pub_id, x1.country,

value = new DateTime(10, 08, 23, 18, 33, 44) });

TopPage

ファイル名 No12_37.linq

関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を int 型に変換する

T-SQL SELECT stor_id, ord_date, CONVERT(int, ord_date) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と異なる */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No12_38.linq

(43)

関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を decimal(7, 1)型に変換する

T-SQL SELECT stor_id, ord_date, CONVERT(decimal(7, 1), ord_date) AS value

FROM sales WHERE stor_id = '6380' LINQ /* LINQ to SQL と異なる */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No12_39.linq 関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を decimal(7)型に変換する

T-SQL SELECT stor_id, ord_date, CONVERT(decimal(7), ord_date) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と異なる */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No12_40.linq 関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を money 型に変換する

T-SQL SELECT stor_id, ord_date, CONVERT(money, ord_date) AS value

FROM sales

WHERE stor_id = '6380'

LINQ コード /* LINQ to SQL と異なる */

sales

(44)

.Select(x1 => new { x1.stor_id, x1.ord_date, value = System.Data.Objects.SqlClient.SqlFunctions.DateDiff( "day", "1900/01/01", x1.ord_date) });

TopPage

ファイル名 No12_41.linq 関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を varchar 型に変換する

T-SQL SELECT stor_id, ord_date, CONVERT(varchar, ord_date) AS value

FROM sales

WHERE stor_id = '6380'

LINQ コード /* LINQ to Entities では、ToString メソッドは認識されないため、SQLCompiler

は警告を表示する。続行の場合は下記のコードに ToList メソッドを手作業で 追加して実行することになる。 */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = (x1.ord_date).ToString() });

TopPage

ファイル名 No12_42.linq 関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を datetime 型に変換する

T-SQL SELECT stor_id, ord_date, CONVERT(datetime, ord_date) AS value

FROM sales WHERE stor_id = '6380' LINQ コード /* LINQ to SQL と同一 */ sales .Where(x1 => x1.stor_id == "6380") .Select(x1 => new { x1.stor_id, x1.ord_date, value = (x1.ord_date) });

TopPage

(45)

ファイル名 No12_50.linq

関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を[yy/MM/dd]形式で varchar 型に変換する

T-SQL SELECT pubdate, CONVERT(varchar, pubdate, 11) AS value

FROM titles LINQ コード /* LINQ to SQL と同一 */ titles .ToList() .Select(x1 => new { x1.pubdate, value = (x1.pubdate).ToString("yy/MM/dd") });

TopPage

ファイル名 No12_51.linq 関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を[yyyy/MM/dd]形式で varchar 型に変換する

T-SQL SELECT pubdate, CONVERT(varchar, pubdate, 111) AS value

FROM titles LINQ コード /* LINQ to SQL と同一 */ titles .ToList() .Select(x1 => new { x1.pubdate, value = (x1.pubdate).ToString("d") });

TopPage

ファイル名 No12_52.linq 関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を[yyyy-MM-dd HH:mm:ss]形式で varchar 型に変換する

T-SQL SELECT pubdate, CONVERT(varchar, pubdate, 20) AS value

FROM titles LINQ コード /* LINQ to SQL と同一 */ titles .ToList() .Select(x1 => new { x1.pubdate, value = (x1.pubdate).ToString("yyyy-MM-dd HH:mm:ss") });

(46)

TopPage

ファイル名 No12_53.linq

関数名 CONVERT

引数の説明 NULL 禁止(datetime 型)を[yyyy-MM-dd HH:mm:ss]形式で varchar 型に変換する

T-SQL SELECT pubdate, CONVERT(varchar, pubdate, 120) AS value

FROM titles LINQ コード /* LINQ to SQL と同一 */ titles .ToList() .Select(x1 => new { x1.pubdate, value = (x1.pubdate).ToString("yyyy-MM-dd HH:mm:ss") });

TopPage

ファイル名 No12_54.linq 関数名 CONVERT

引数の説明 (Northwind データベース)NULL 許容(datetime 型)を[yy/MM/dd]形式で varchar 型に

変換する

T-SQL SELECT ShippedDate, CONVERT(varchar, ShippedDate, 11) AS value

FROM Orders

WHERE OrderID = 11008 OR OrderID = 11009

LINQ コード /* LINQ to SQL と同一 */

Orders .ToList()

.Where(x1 => x1.OrderID == 11008 || x1.OrderID == 11009) .Select(x1 => new

{

x1.ShippedDate,

value = (x1.ShippedDate == null ? null :

(x1.ShippedDate).GetValueOrDefault().ToString("yy/MM/dd")) });

TopPage

ファイル名 No12_55.linq

関数名 CONVERT

引数の説明 (Northwind データベース)NULL 許容(datetime 型)を[yyyy/MM/dd]形式で varchar 型

に変換する

T-SQL SELECT ShippedDate, CONVERT(varchar, ShippedDate, 111) AS value

FROM Orders

(47)

LINQ コード /* LINQ to SQL と同一 */ Orders

.ToList()

.Where(x1 => x1.OrderID == 11008 || x1.OrderID == 11009) .Select(x1 => new

{

x1.ShippedDate,

value = (x1.ShippedDate == null ? null :

(x1.ShippedDate).GetValueOrDefault().ToString("d")) });

TopPage

ファイル名 No12_56.linq

関数名 CONVERT

引数の説明 (Northwind データベース)NULL 許容(datetime 型)を[yyyy-MM-dd HH:mm:ss]形式で

varchar 型に変換する

T-SQL SELECT ShippedDate, CONVERT(varchar, ShippedDate, 20) AS value

FROM Orders

WHERE OrderID = 11008 OR OrderID = 11009

LINQ コード /* LINQ to SQL と同一 */

Orders .ToList()

.Where(x1 => x1.OrderID == 11008 || x1.OrderID == 11009) .Select(x1 => new

{

x1.ShippedDate,

value = (x1.ShippedDate == null ? null :

(x1.ShippedDate).GetValueOrDefault().ToString( "yyyy-MM-dd HH:mm:ss")) });

TopPage

ファイル名 No12_57.linq 関数名 CONVERT

引数の説明 (Northwind データベース)NULL 許容(datetime 型)を[yyyy-MM-dd HH:mm:ss]形式で

varchar 型に変換する

T-SQL SELECT ShippedDate, CONVERT(varchar, ShippedDate, 120) AS value

FROM Orders

WHERE OrderID = 11008 OR OrderID = 11009

LINQ コード /* LINQ to SQL と同一 */

Orders

.Where(x1 => x1.OrderID == 11008 || x1.OrderID == 11009) .ToList()

.Select(x1 => new {

(48)

x1.ShippedDate,

value = (x1.ShippedDate == null ? null :

(x1.ShippedDate).GetValueOrDefault().ToString( "yyyy-MM-dd HH:mm:ss")) });

TopPage

ファイル名 No12_60.linq 関数名 CONVERT 引数の説明 文字列リテラルで表した時間([yy/MM/dd]形式)を datetime 型に変換する

T-SQL SELECT pubdate, CONVERT(datetime, '10/08/27', 11) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles .Where(x1 => (x1.title_id).StartsWith("MC")) .ToList() .Select(x1 => new { x1.pubdate,

value = DateTime.ParseExact("10/08/27", "yy/MM/dd", null) });

TopPage

ファイル名 No12_61.linq

関数名 CONVERT

引数の説明 文字列リテラルで表した時間([yyyy/MM/dd]形式)を datetime 型に変換する

T-SQL SELECT pubdate, CONVERT(datetime, '2010/08/27', 111) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles .Where(x1 => (x1.title_id).StartsWith("MC")) .ToList() .Select(x1 => new { x1.pubdate,

value = DateTime.ParseExact("2010/08/27", "d", null) });

TopPage

ファイル名 No12_62.linq

(49)

引数の説明 文字列リテラルで表した時間([yyyy-MM-dd HH:mm:ss]形式)を datetime 型に変換す る

T-SQL SELECT pubdate, CONVERT(datetime, '2010-08-27 14:39:39', 20) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles .Where(x1 => (x1.title_id(.StartsWith("MC")) .ToList() .Select(x1 => new { x1.pubdate, value = DateTime.ParseExact("2010-08-27 14:39:39", "yyyy-MM-dd HH:mm:ss", null) });

TopPage

ファイル名 No12_63.linq 関数名 CONVERT 引数の説明 文字列リテラルで表した時間([yyyy-MM-dd HH:mm:ss]形式)を datetime 型に変換す る

T-SQL SELECT pubdate, CONVERT(datetime, '2010-08-27 14:39:39', 120) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles .Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new { x1.pubdate, value = DateTime.ParseExact("2010-08-27 14:39:39", "yyyy-MM-dd HH:mm:ss", null) });

TopPage

ファイル名 No12_70.linq 関数名 CONVERT

引数の説明 NULL 許容(money 型)を位取り無しで小数 2 桁の varchar 型に変換する

T-SQL SELECT advance, CONVERT(varchar, advance, 0) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles

.Where(x1 => (x1.title_id).StartsWith("MC")) .ToList()

(50)

.Select(x1 => new {

x1.advance,

value = (x1.advance == null ? null :

(x1.advance).GetValueOrDefault().ToString("F2", System.Globalization.CultureInfo.InvariantCulture)) });

TopPage

ファイル名 No12_71.linq 関数名 CONVERT

引数の説明 NULL 許容(money 型)を位取り有りで小数 2 桁の varchar 型に変換する

T-SQL SELECT advance, CONVERT(varchar, advance, 1) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles

.Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new

{

x1.advance,

value = (x1.advance == null ? null :

(x1.advance).GetValueOrDefault().ToString("N2", System.Globalization.CultureInfo.InvariantCulture)) });

TopPage

ファイル名 No12_72.linq 関数名 CONVERT

引数の説明 NULL 許容(money 型)を位取り無しで小数 4 桁の varchar 型に変換する

T-SQL SELECT advance, CONVERT(varchar, advance, 2) AS value

FROM titles

WHERE title_id LIKE 'MC%'

LINQ コード /* LINQ to SQL と異なる(LIKE 述語のみ) */

titles

.Where(x1 => (x1.title_id).StartsWith("MC")) .Select(x1 => new

{

x1.advance,

value = (x1.advance == null ? null :

(x1.advance).GetValueOrDefault().ToString("F4", System.Globalization.CultureInfo.InvariantCulture)) });

(51)

参照

関連したドキュメント

Appeon and other Appeon products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Appeon Limited.. SAP and other SAP

まずフォンノイマン環は,普通とは異なる「長さ」を持っています. (知っている人に向け て書けば, B

Theorem 3 implies strong asymptotic stability results: the energy of strong solutions decays to zero, with an explicit decay rate

There is a bijection between left cosets of S n in the affine group and certain types of partitions (see Bjorner and Brenti (1996) and Eriksson and Eriksson (1998)).. In B-B,

Actually a similar property shall be first de- rived for a general class of first order systems including the transport equation and Schr¨odinger equations.. Then we shall consider

(The Elliott-Halberstam conjecture does allow one to take B = 2 in (1.39), and therefore leads to small improve- ments in Huxley’s results, which for r ≥ 2 are weaker than the result

“Breuil-M´ezard conjecture and modularity lifting for potentially semistable deformations after

At the end of the section, we will be in the position to present the main result of this work: a representation of the inverse of T under certain conditions on the H¨older