@@ -55,6 +55,39 @@ df.select { name.all() }
55
55
df.select { name.allDfs() }
56
56
```
57
57
58
+ </tab >
59
+ <tab title =" Strings " >
60
+
61
+ ``` kotlin
62
+ // by column name
63
+ df.select { it[" name" ] }
64
+
65
+ // by column path
66
+ df.select { it[" name" ][" firstName" ] }
67
+ df.select { " name" [" firstName" ] }
68
+
69
+ // with a new name
70
+ df.select { " name" named " Full Name" }
71
+
72
+ // converted
73
+ df.select { " name" [" firstName" ]<String >().map { it.uppercase() } }
74
+
75
+ // column arithmetics
76
+ df.select { 2021 - " age" <Int >() }
77
+
78
+ // two columns
79
+ df.select { " name" and " age" }
80
+
81
+ // by range of names
82
+ df.select { " name" .. " age" }
83
+
84
+ // all children of ColumnGroup
85
+ df.select { " name" .all() }
86
+
87
+ // dfs traversal of all children columns
88
+ df.select { " name" .allDfs() }
89
+ ```
90
+
58
91
</tab >
59
92
<tab title =" Accessors " >
60
93
@@ -92,39 +125,42 @@ df.select { name.allDfs() }
92
125
```
93
126
94
127
</tab >
95
- <tab title =" Strings " >
128
+ <tab title =" KProperties " >
96
129
97
130
``` kotlin
98
131
// by column name
99
- df.select { it[" name" ] }
132
+ df.select { it[Person ::name] }
133
+ df.select { (Person ::name)() }
134
+ df.select { col(Person ::name) }
100
135
101
136
// by column path
102
- df.select { it[" name" ][ " firstName" ] }
103
- df.select { " name" [ " firstName" ] }
137
+ df.select { it[Person :: name][ Name :: firstName] }
138
+ df.select { Person :: name[ Name :: firstName] }
104
139
105
140
// with a new name
106
- df.select { " name" named " Full Name" }
141
+ df.select { Person :: name named " Full Name" }
107
142
108
143
// converted
109
- df.select { " name" [ " firstName" ]< String >() .map { it.uppercase () } }
144
+ df.select { Person :: name[ Name :: firstName] .map { it.lowercase () } }
110
145
111
146
// column arithmetics
112
- df.select { 2021 - " age" < Int > () }
147
+ df.select { 2021 - ( Person :: age) () }
113
148
114
149
// two columns
115
- df.select { " name" and " age" }
150
+ df.select { Person :: name and Person :: age }
116
151
117
- // by range of names
118
- df.select { " name" .. " age" }
152
+ // range of columns
153
+ df.select { Person :: name.. Person :: age }
119
154
120
155
// all children of ColumnGroup
121
- df.select { " name" .all() }
156
+ df.select { Person :: name.all() }
122
157
123
158
// dfs traversal of all children columns
124
- df.select { " name" .allDfs() }
159
+ df.select { Person :: name.allDfs() }
125
160
```
126
161
127
- </tab ></tabs >
162
+ </tab >
163
+ </tabs >
128
164
<!-- -END-->
129
165
130
166
** Select columns by column index:**
0 commit comments