From 364ece9666cac0b5ec736178f4276d0f35fe4928 Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Wed, 23 Jul 2025 15:45:40 +0530 Subject: [PATCH 1/9] EXCLUDE clause ebnf --- .../exclude-clause.png | Bin 0 -> 4842 bytes .../n1ql-language-reference/exclude-terms.png | Bin 0 -> 2859 bytes .../n1ql-language-reference/select-clause.png | Bin 5817 -> 7603 bytes .../images/n1ql-language-reference/term.png | Bin 0 -> 4448 bytes .../select-syntax.adoc | 2 +- .../n1ql-language-reference/selectclause.adoc | 76 ++++++++++++++++++ modules/n1ql/partials/grammar/dql.ebnf | 9 ++- modules/n1ql/partials/nav.adoc | 1 + 8 files changed, 86 insertions(+), 2 deletions(-) create mode 100644 modules/n1ql/assets/images/n1ql-language-reference/exclude-clause.png create mode 100644 modules/n1ql/assets/images/n1ql-language-reference/exclude-terms.png create mode 100644 modules/n1ql/assets/images/n1ql-language-reference/term.png diff --git a/modules/n1ql/assets/images/n1ql-language-reference/exclude-clause.png b/modules/n1ql/assets/images/n1ql-language-reference/exclude-clause.png new file mode 100644 index 0000000000000000000000000000000000000000..28310b42884ea8fb833855ce0e3da4192e97c5d2 GIT binary patch literal 4842 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 QKmY&$07*qoM6N<$f)2cfr2qf` literal 0 HcmV?d00001 diff --git a/modules/n1ql/assets/images/n1ql-language-reference/exclude-terms.png b/modules/n1ql/assets/images/n1ql-language-reference/exclude-terms.png new file mode 100644 index 0000000000000000000000000000000000000000..edb35fa2b44edcbba53573493fd0b303793f000e GIT binary patch literal 2859 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 literal 0 HcmV?d00001 diff --git a/modules/n1ql/assets/images/n1ql-language-reference/select-clause.png b/modules/n1ql/assets/images/n1ql-language-reference/select-clause.png index 187f3412827b1f2449d42607ec217615dd3e0687..c0349054e9325b09558e088b92912ac816b308f2 100644 GIT binary patch delta 7556 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 diff --git a/modules/n1ql/assets/images/n1ql-language-reference/term.png b/modules/n1ql/assets/images/n1ql-language-reference/term.png new file mode 100644 index 0000000000000000000000000000000000000000..526de6c4f4c1877db3fec75d395112d4a842fe49 GIT binary patch literal 4448 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 +select-clause ::= 'SELECT' {hints}[hint-comment]? <> exclude-clause? ---- image::n1ql-language-reference/select-clause.png["Syntax diagram", align=left] diff --git a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc index 0080da7d4..3bc90e00c 100644 --- a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc @@ -34,6 +34,7 @@ image::n1ql-language-reference/select-clause.png["Syntax diagram", align=left] [horizontal.compact] hint-comment:: <> icon:caret-down[] projection:: <> icon:caret-down[] +exclude-clause:: <> icon:caret-down[] [#hint-comment] === Optimizer Hints @@ -155,6 +156,35 @@ If you do not explicitly give a field an alias, it is given an _implicit alias_. An implicit or explicit alias is returned in the result set, unless you suppress it using the <>. +[#sec_ExcludeClause] +=== EXCLUDE Clause + +The EXCLUDE clause enables you to exclude fields from the result set. + +[source,ebnf] +---- +include::partial$grammar/dql.ebnf[tag=exclude-clause] +---- +image::n1ql-language-reference/exclude-clause.png["Syntax diagram", align=left] + +It can one or more <>, separated by commas. + +==== Term +[source,ebnf] +---- +include::partial$grammar/dql.ebnf[tag=term] +---- +image::n1ql-language-reference/term.png["Syntax diagram", align=left] + +Term is an element (alias) listed previously in the projection of the SELECT. +Elements listed are excluded from the final projection. +This is primarily for excluding fields from star expressions. + +They can be identifiers (e.g. default.field) or string expressions which identify fields similarly (e.g. "default.field") in a comma-separated list. +When there is a single FROM term, fields are automatically qualified with it. +Terms should identify the field as addressed in the projection - if a term is aliased the alias should be used. + + [#sec_BestPractices] == Best Practices @@ -632,6 +662,52 @@ FROM hotel LIMIT 5; <.> With a select expression, you may optionally include the keyspace name; in either case, the keyspace name is not added to the results. ==== +[[ex-exclude-clause]] +.Exclude clause +==== +.Query +[source,sqlpp] +---- +SELECT * EXCLUDE reviews,h.public_likes,"geo,`description`" +FROM `travel-sample`.inventory.hotel h +ORDER BY meta().id LIMIT 1 +---- + +.Results +[source,json] +---- +"results": [ + { + "h": { + "address": "Capstone Road, ME7 3JE", + "alias": null, + "checkin": null, + "checkout": null, + "city": "Medway", + "country": "United Kingdom", + "directions": null, + "email": null, + "fax": null, + "free_breakfast": true, + "free_internet": false, + "free_parking": true, + "id": 10025, + "name": "Medway Youth Hostel", + "pets_ok": true, + "phone": "+44 870 770 5964", + "price": null, + "state": null, + "title": "Gillingham (Kent)", + "tollfree": null, + "type": "hotel", + "url": "http://www.yha.org.uk", + "vacancy": true + } + } +] +---- +==== + [#sec_RelatedLinks] == Related Links diff --git a/modules/n1ql/partials/grammar/dql.ebnf b/modules/n1ql/partials/grammar/dql.ebnf index 85e09ba7c..792cb90b8 100644 --- a/modules/n1ql/partials/grammar/dql.ebnf +++ b/modules/n1ql/partials/grammar/dql.ebnf @@ -74,7 +74,7 @@ recursive-select-term ::= select-term /* SELECT Clause */ /* tag::select-clause[] */ -select-clause ::= 'SELECT' hint-comment? projection +select-clause ::= 'SELECT' hint-comment? projection exclude-clause? /* end::select-clause[] */ hint-comment ::= [https://github.com/couchbaselabs/docs-devex/blob/release/7.6/modules/n1ql/partials/grammar/hints.ebnf] @@ -92,6 +92,13 @@ result-expr ::= ( path '.' )? '*' | expr ( 'AS'? alias )? path ::= identifier ( '[' expr ']' )* ( '.' identifier ( '[' expr ']' )* )* /* end::path[] */ +/* tag::exclude-clause[] */ +exclude-clause ::= 'EXCLUDE' term ( ',' term )* +/* end::exclude-clause[] */ + +/* tag::term[] */ +term ::= identifier | string-expression +/* end::term[] */ /* FROM Clause */ diff --git a/modules/n1ql/partials/nav.adoc b/modules/n1ql/partials/nav.adoc index 108680045..73c13b9ee 100644 --- a/modules/n1ql/partials/nav.adoc +++ b/modules/n1ql/partials/nav.adoc @@ -125,6 +125,7 @@ ***** xref:n1ql:n1ql-language-reference/selectclause.adoc[] ***** xref:n1ql:n1ql-language-reference/with.adoc[] ***** xref:n1ql:n1ql-language-reference/with-recursive.adoc[] + ***** xref:n1ql:n1ql-language-reference/exclude.adoc[] ***** xref:n1ql:n1ql-language-reference/from.adoc[] ***** xref:n1ql:n1ql-language-reference/hints.adoc[] ***** xref:n1ql:n1ql-language-reference/join.adoc[] From aab13eaf5594a52ce7ff134d80660f5ca85263d3 Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Thu, 24 Jul 2025 12:54:47 +0530 Subject: [PATCH 2/9] Update select-syntax.adoc --- .../select-syntax.adoc | 18 +++- .../n1ql-language-reference/selectclause.adoc | 91 +++++++++++-------- modules/n1ql/partials/nav.adoc | 1 - 3 files changed, 69 insertions(+), 41 deletions(-) diff --git a/modules/n1ql/pages/n1ql-language-reference/select-syntax.adoc b/modules/n1ql/pages/n1ql-language-reference/select-syntax.adoc index a0cd558ea..76065a317 100644 --- a/modules/n1ql/pages/n1ql-language-reference/select-syntax.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/select-syntax.adoc @@ -5,6 +5,7 @@ :page-topic-type: reference :expression: xref:n1ql-language-reference/index.adoc#N1QL_Expressions +:string-expression: xref:n1ql-language-reference/literals.adoc#strings :hints: xref:n1ql-language-reference/optimizer-hints.adoc :conventions: xref:n1ql-language-reference/conventions.adoc :number: xref:n1ql-language-reference/literals.adoc#numbers @@ -81,7 +82,7 @@ image::n1ql-language-reference/alias.png["Syntax diagram", align=left] [subs="normal"] ---- -select-clause ::= 'SELECT' {hints}[hint-comment]? <> exclude-clause? +select-clause ::= 'SELECT' {hints}[hint-comment]? <> <>? ---- image::n1ql-language-reference/select-clause.png["Syntax diagram", align=left] @@ -109,6 +110,21 @@ path ::= {identifier}[identifier] ( '[' {expression}[expr] ']' )* ( '.' {identif image::n1ql-language-reference/path.png["Syntax diagram", align=left] +[#exclude-clause,reftext="exclude-clause",subs="normal"] +---- +exclude-clause ::= 'EXCLUDE' <> ( ',' <> )* +---- + +image::n1ql-language-reference/exclude-clause.png["Syntax diagram", align=left] + +[#term,reftext="term",subs="normal"] +---- +term ::= {identifier}[identifier] | {string-expression}[string-expr] +---- +image::n1ql-language-reference/term.png["Syntax diagram", align=left] + +[#hints,reftext="hints",subs="normal"] + [[from-clause,from-clause]] == FROM Clause diff --git a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc index 3bc90e00c..27abad9bf 100644 --- a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc @@ -159,16 +159,19 @@ An implicit or explicit alias is returned in the result set, unless you suppress [#sec_ExcludeClause] === EXCLUDE Clause -The EXCLUDE clause enables you to exclude fields from the result set. - [source,ebnf] ---- include::partial$grammar/dql.ebnf[tag=exclude-clause] ---- image::n1ql-language-reference/exclude-clause.png["Syntax diagram", align=left] -It can one or more <>, separated by commas. +The EXCLUDE clause enables you to remove specific fields from the result set. +This is particularly useful when you're using the star expression `{asterisk}` to select all fields, and want to remove only a few. +It saves you from having to explicitly list every field you want in your result set. + +The clause consists of one or more <>, separated by commas. +[[exclude-term]] ==== Term [source,ebnf] ---- @@ -176,14 +179,24 @@ include::partial$grammar/dql.ebnf[tag=term] ---- image::n1ql-language-reference/term.png["Syntax diagram", align=left] -Term is an element (alias) listed previously in the projection of the SELECT. -Elements listed are excluded from the final projection. -This is primarily for excluding fields from star expressions. +A term is an element previously listed in the projection of the SELECT statement. +You can use a term to exclude a specific field from the final projection. +It must exactly match the field name or alias as it appears in the projection. + +A term can be: -They can be identifiers (e.g. default.field) or string expressions which identify fields similarly (e.g. "default.field") in a comma-separated list. -When there is a single FROM term, fields are automatically qualified with it. -Terms should identify the field as addressed in the projection - if a term is aliased the alias should be used. +* An identifier, such as `hotel.name`. +* A string expression with one ore more fields separated by commas, such as `"hotel.name, address"`. +Refer to <>. + +[NOTE] +==== +* If the field has an alias, you must use the alias as the term. +* When your query includes only one FROM term, fields are automatically qualified with it. +You can use the field name without the full identifier. +For example `name` instead of `hotel.name`. +==== [#sec_BestPractices] == Best Practices @@ -663,48 +676,48 @@ FROM hotel LIMIT 5; ==== [[ex-exclude-clause]] -.Exclude clause +.SELECT with an EXCLUDE clause ==== .Query [source,sqlpp] ---- SELECT * EXCLUDE reviews,h.public_likes,"geo,`description`" FROM `travel-sample`.inventory.hotel h -ORDER BY meta().id LIMIT 1 +ORDER BY meta().id LIMIT 1; ---- .Results [source,json] ---- -"results": [ - { - "h": { - "address": "Capstone Road, ME7 3JE", - "alias": null, - "checkin": null, - "checkout": null, - "city": "Medway", - "country": "United Kingdom", - "directions": null, - "email": null, - "fax": null, - "free_breakfast": true, - "free_internet": false, - "free_parking": true, - "id": 10025, - "name": "Medway Youth Hostel", - "pets_ok": true, - "phone": "+44 870 770 5964", - "price": null, - "state": null, - "title": "Gillingham (Kent)", - "tollfree": null, - "type": "hotel", - "url": "http://www.yha.org.uk", - "vacancy": true - } +[ + { + "h": { + "address": "Capstone Road, ME7 3JE", + "alias": null, + "checkin": null, + "checkout": null, + "city": "Medway", + "country": "United Kingdom", + "directions": null, + "email": null, + "fax": null, + "free_breakfast": true, + "free_internet": false, + "free_parking": true, + "id": 10025, + "name": "Medway Youth Hostel", + "pets_ok": true, + "phone": "+44 870 770 5964", + "price": null, + "state": null, + "title": "Gillingham (Kent)", + "tollfree": null, + "type": "hotel", + "url": "http://www.yha.org.uk", + "vacancy": true } -] + } +] ---- ==== diff --git a/modules/n1ql/partials/nav.adoc b/modules/n1ql/partials/nav.adoc index 73c13b9ee..108680045 100644 --- a/modules/n1ql/partials/nav.adoc +++ b/modules/n1ql/partials/nav.adoc @@ -125,7 +125,6 @@ ***** xref:n1ql:n1ql-language-reference/selectclause.adoc[] ***** xref:n1ql:n1ql-language-reference/with.adoc[] ***** xref:n1ql:n1ql-language-reference/with-recursive.adoc[] - ***** xref:n1ql:n1ql-language-reference/exclude.adoc[] ***** xref:n1ql:n1ql-language-reference/from.adoc[] ***** xref:n1ql:n1ql-language-reference/hints.adoc[] ***** xref:n1ql:n1ql-language-reference/join.adoc[] From 88fc7a038d27ee1bce364fb17fc2e9ca2fb0b99d Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Thu, 24 Jul 2025 13:29:09 +0530 Subject: [PATCH 3/9] Update the SELECT clause --- modules/n1ql/pages/n1ql-language-reference/selectclause.adoc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc index 27abad9bf..e76f818b0 100644 --- a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc @@ -166,8 +166,9 @@ include::partial$grammar/dql.ebnf[tag=exclude-clause] image::n1ql-language-reference/exclude-clause.png["Syntax diagram", align=left] The EXCLUDE clause enables you to remove specific fields from the result set. + This is particularly useful when you're using the star expression `{asterisk}` to select all fields, and want to remove only a few. -It saves you from having to explicitly list every field you want in your result set. +It also eliminates the need to explicitly list every field you want to keep, thereby simplifying your query. The clause consists of one or more <>, separated by commas. From 596fde40104cbc3ca7f8d6c4d635f94859a19f47 Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Thu, 24 Jul 2025 15:38:59 +0530 Subject: [PATCH 4/9] change term to exclude-term --- .../exclude-clause.png | Bin 4842 -> 5906 bytes .../n1ql-language-reference/exclude-term.png | Bin 0 -> 4448 bytes .../select-syntax.adoc | 6 +++--- .../n1ql-language-reference/selectclause.adoc | 13 +++++++------ modules/n1ql/partials/grammar/dql.ebnf | 9 +++++---- 5 files changed, 15 insertions(+), 13 deletions(-) create mode 100644 modules/n1ql/assets/images/n1ql-language-reference/exclude-term.png diff --git a/modules/n1ql/assets/images/n1ql-language-reference/exclude-clause.png b/modules/n1ql/assets/images/n1ql-language-reference/exclude-clause.png index 28310b42884ea8fb833855ce0e3da4192e97c5d2..cb7a8b1012ce74fa69a1aa1acd1aa6d340cbe400 100644 GIT binary patch delta 5846 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 delta 4773 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 diff --git a/modules/n1ql/assets/images/n1ql-language-reference/exclude-term.png b/modules/n1ql/assets/images/n1ql-language-reference/exclude-term.png new file mode 100644 index 0000000000000000000000000000000000000000..526de6c4f4c1877db3fec75d395112d4a842fe49 GIT binary patch literal 4448 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 ( ',' <> )* +exclude-clause ::= 'EXCLUDE' <> ( ',' <> )* ---- image::n1ql-language-reference/exclude-clause.png["Syntax diagram", align=left] -[#term,reftext="term",subs="normal"] +[#exclude-term,reftext="exclude-term",subs="normal"] ---- -term ::= {identifier}[identifier] | {string-expression}[string-expr] +exclude-term ::= {identifier}[identifier] | {string-expression}[string-expr] ---- image::n1ql-language-reference/term.png["Syntax diagram", align=left] diff --git a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc index e76f818b0..161fa8f4b 100644 --- a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc @@ -170,21 +170,22 @@ The EXCLUDE clause enables you to remove specific fields from the result set. This is particularly useful when you're using the star expression `{asterisk}` to select all fields, and want to remove only a few. It also eliminates the need to explicitly list every field you want to keep, thereby simplifying your query. -The clause consists of one or more <>, separated by commas. +The clause consists of one or more <>, separated by commas. [[exclude-term]] -==== Term +==== EXCLUDE Term [source,ebnf] ---- -include::partial$grammar/dql.ebnf[tag=term] +include::partial$grammar/dql.ebnf[tag=exclude-term] ---- -image::n1ql-language-reference/term.png["Syntax diagram", align=left] +image::n1ql-language-reference/exclude-term.png["Syntax diagram", align=left] -A term is an element previously listed in the projection of the SELECT statement. +An EXCLUDE term is a field that you want to exclude from final projection. +//A term is an element previously listed in the projection of the SELECT statement. You can use a term to exclude a specific field from the final projection. It must exactly match the field name or alias as it appears in the projection. -A term can be: +It can be: * An identifier, such as `hotel.name`. * A string expression with one ore more fields separated by commas, such as `"hotel.name, address"`. diff --git a/modules/n1ql/partials/grammar/dql.ebnf b/modules/n1ql/partials/grammar/dql.ebnf index 792cb90b8..2a6a53964 100644 --- a/modules/n1ql/partials/grammar/dql.ebnf +++ b/modules/n1ql/partials/grammar/dql.ebnf @@ -71,6 +71,7 @@ anchor-select ::= select /* tag::recursive-select-term[] */ recursive-select-term ::= select-term /* end::recursive-select-term[] */ + /* SELECT Clause */ /* tag::select-clause[] */ @@ -93,12 +94,12 @@ path ::= identifier ( '[' expr ']' )* ( '.' identifier ( '[' expr ']' )* )* /* end::path[] */ /* tag::exclude-clause[] */ -exclude-clause ::= 'EXCLUDE' term ( ',' term )* +exclude-clause ::= 'EXCLUDE' exclude-term ( ',' exclude-term )* /* end::exclude-clause[] */ -/* tag::term[] */ -term ::= identifier | string-expression -/* end::term[] */ +/* tag::exclude-term[] */ +exclude-term ::= identifier | string-expression +/* end::exclude-term[] */ /* FROM Clause */ From 0711c6ab917885d1be12f71fc9ae7d51dbd758ae Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Fri, 25 Jul 2025 12:31:02 +0530 Subject: [PATCH 5/9] Update content --- .../n1ql-language-reference/selectclause.adoc | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc index 161fa8f4b..237695b9b 100644 --- a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc @@ -165,10 +165,10 @@ include::partial$grammar/dql.ebnf[tag=exclude-clause] ---- image::n1ql-language-reference/exclude-clause.png["Syntax diagram", align=left] -The EXCLUDE clause enables you to remove specific fields from the result set. +The EXCLUDE clause removes specific fields from your query's result set. -This is particularly useful when you're using the star expression `{asterisk}` to select all fields, and want to remove only a few. -It also eliminates the need to explicitly list every field you want to keep, thereby simplifying your query. +Instead of listing every field you want to include in the SELECT statement, use EXCLUDE to specify only the ones you want to omit. +This is particularly useful when you use the star expression (`{asterisk}`) to select all fields, but want to exclude a few. The clause consists of one or more <>, separated by commas. @@ -180,26 +180,25 @@ include::partial$grammar/dql.ebnf[tag=exclude-term] ---- image::n1ql-language-reference/exclude-term.png["Syntax diagram", align=left] -An EXCLUDE term is a field that you want to exclude from final projection. -//A term is an element previously listed in the projection of the SELECT statement. -You can use a term to exclude a specific field from the final projection. +An EXCLUDE term is a field that you want to exclude from the final projection. It must exactly match the field name or alias as it appears in the projection. +Refer to <>. -It can be: +An EXCLUDE term can be: * An identifier, such as `hotel.name`. * A string expression with one ore more fields separated by commas, such as `"hotel.name, address"`. -Refer to <>. - [NOTE] ==== * If the field has an alias, you must use the alias as the term. * When your query includes only one FROM term, fields are automatically qualified with it. You can use the field name without the full identifier. -For example `name` instead of `hotel.name`. +For example, `name` instead of `hotel.name`. ==== +[#sec_StarExpression] + [#sec_BestPractices] == Best Practices From 3597d3869ccd2b78171e68419ee2b14de4cab54c Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Fri, 25 Jul 2025 12:57:48 +0530 Subject: [PATCH 6/9] Remove an invalid line --- modules/n1ql/pages/n1ql-language-reference/selectclause.adoc | 2 -- 1 file changed, 2 deletions(-) diff --git a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc index 237695b9b..3b72a269d 100644 --- a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc @@ -197,8 +197,6 @@ You can use the field name without the full identifier. For example, `name` instead of `hotel.name`. ==== -[#sec_StarExpression] - [#sec_BestPractices] == Best Practices From be0d88e3246da265855a8f4f0a9fb0b5f52a3f6e Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Fri, 25 Jul 2025 13:05:42 +0530 Subject: [PATCH 7/9] Delete exlude-terms.png --- .../n1ql-language-reference/exclude-terms.png | Bin 2859 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 modules/n1ql/assets/images/n1ql-language-reference/exclude-terms.png diff --git a/modules/n1ql/assets/images/n1ql-language-reference/exclude-terms.png b/modules/n1ql/assets/images/n1ql-language-reference/exclude-terms.png deleted file mode 100644 index edb35fa2b44edcbba53573493fd0b303793f000e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2859 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 From 3125d3a54a794fbdae089c409a769f9de3b09435 Mon Sep 17 00:00:00 2001 From: Rakhi Prathap Date: Fri, 25 Jul 2025 13:09:19 +0530 Subject: [PATCH 8/9] Fix images --- .../images/n1ql-language-reference/term.png | Bin 4448 -> 0 bytes .../n1ql-language-reference/select-syntax.adoc | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 modules/n1ql/assets/images/n1ql-language-reference/term.png diff --git a/modules/n1ql/assets/images/n1ql-language-reference/term.png b/modules/n1ql/assets/images/n1ql-language-reference/term.png deleted file mode 100644 index 526de6c4f4c1877db3fec75d395112d4a842fe49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4448 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 Date: Thu, 31 Jul 2025 15:08:49 +0530 Subject: [PATCH 9/9] Apply suggestions from code review Co-authored-by: Simon Dew <39966290+simon-dew@users.noreply.github.com> --- modules/n1ql/pages/n1ql-language-reference/selectclause.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc index 3b72a269d..dff382d14 100644 --- a/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc +++ b/modules/n1ql/pages/n1ql-language-reference/selectclause.adoc @@ -187,7 +187,7 @@ Refer to <>. An EXCLUDE term can be: * An identifier, such as `hotel.name`. -* A string expression with one ore more fields separated by commas, such as `"hotel.name, address"`. +* A string expression with one or more fields separated by commas, such as `"hotel.name, address"`. [NOTE] ==== @@ -680,7 +680,7 @@ FROM hotel LIMIT 5; .Query [source,sqlpp] ---- -SELECT * EXCLUDE reviews,h.public_likes,"geo,`description`" +SELECT * EXCLUDE reviews,h.public_likes,"geo,description" FROM `travel-sample`.inventory.hotel h ORDER BY meta().id LIMIT 1; ----