Constants
The minor version of Sequel
. Bumped for every non-patch level release, generally around once a month.
Public Instance methods
# File lib/sequel/database/schema_methods.rb 254 def create_or_replace_view(name, source, options = OPTS) -255 if supports_create_or_replace_view? +255 if supports_create_or_replace_view? && !options[:materialized] 256 options = options.merge(:replace=>true) 257 else -258 swallow_database_error{drop_view(name)} +258 swallow_database_error{drop_view(name, options)} 259 end 260 261 create_view(name, source, options) diff --git a/rdoc/classes/Sequel/Dataset.html b/rdoc/classes/Sequel/Dataset.html index 7fc3f987b..dce6ef5d4 100644 --- a/rdoc/classes/Sequel/Dataset.html +++ b/rdoc/classes/Sequel/Dataset.html @@ -242,6 +242,7 @@Public Instance
Public Instance methods
# File lib/sequel/dataset/query.rb 946 def select_append(*columns, &block) -947 cur_sel = @opts[:select] -948 if !cur_sel || cur_sel.empty? -949 unless supports_select_all_and_column? -950 return select_all(*(Array(@opts[:from]) + Array(@opts[:join]))).select_append(*columns, &block) -951 end -952 cur_sel = [WILDCARD] -953 end -954 select(*(cur_sel + columns), &block) -955 end+947 virtual_row_columns(columns, block) +948 select(*(_current_select(true) + columns)) +949 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -966 def select_group(*columns, &block) -967 virtual_row_columns(columns, block) -968 select(*columns).group(*columns.map{|c| unaliased_identifier(c)}) -969 end+960 def select_group(*columns, &block) +961 virtual_row_columns(columns, block) +962 select(*columns).group(*columns.map{|c| unaliased_identifier(c)}) +963 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -972 def select_more(*columns, &block) -973 select_append(*columns, &block) -974 end+966 def select_more(*columns, &block) +967 select_append(*columns, &block) +968 end +
Returns a copy of the dataset with the given columns added to the existing selected columns. If no columns are currently selected, it will select the columns given in addition to *.
+ +DB[:items].select(:a).select(:b) # SELECT b FROM items +DB[:items].select(:a).select_prepend(:b) # SELECT b, a FROM items +DB[:items].select_prepend(:b) # SELECT b, * FROM items ++ +
# File lib/sequel/dataset/query.rb +977 def select_prepend(*columns, &block) +978 virtual_row_columns(columns, block) +979 select(*(columns + _current_select(false))) +980 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -985 def server(servr) -986 clone(:server=>servr) -987 end+991 def server(servr) +992 clone(:server=>servr) +993 end
Public Instance methods
[show source] -# File lib/sequel/dataset/query.rb -992 def server?(server) -993 if db.sharded? && !opts[:server] -994 server(server) -995 else -996 self -997 end -998 end+
# File lib/sequel/dataset/query.rb + 998 def server?(server) + 999 if db.sharded? && !opts[:server] +1000 server(server) +1001 else +1002 self +1003 end +1004 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1001 def skip_limit_check -1002 cached_dataset(:_skip_limit_check_ds) do -1003 clone(:skip_limit_check=>true) -1004 end -1005 end+1007 def skip_limit_check +1008 cached_dataset(:_skip_limit_check_ds) do +1009 clone(:skip_limit_check=>true) +1010 end +1011 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1008 def skip_locked -1009 cached_dataset(:_skip_locked_ds) do -1010 raise(Error, 'This dataset does not support skipping locked rows') unless supports_skip_locked? -1011 clone(:skip_locked=>true) -1012 end -1013 end+1014 def skip_locked +1015 cached_dataset(:_skip_locked_ds) do +1016 raise(Error, 'This dataset does not support skipping locked rows') unless supports_skip_locked? +1017 clone(:skip_locked=>true) +1018 end +1019 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1019 def unfiltered -1020 cached_dataset(:_unfiltered_ds){clone(:where => nil, :having => nil)} -1021 end+1025 def unfiltered +1026 cached_dataset(:_unfiltered_ds){clone(:where => nil, :having => nil)} +1027 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1027 def ungrouped -1028 cached_dataset(:_ungrouped_ds){clone(:group => nil, :having => nil)} -1029 end+1033 def ungrouped +1034 cached_dataset(:_ungrouped_ds){clone(:group => nil, :having => nil)} +1035 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1047 def union(dataset, opts=OPTS) -1048 compound_clone(:union, dataset, opts) -1049 end+1053 def union(dataset, opts=OPTS) +1054 compound_clone(:union, dataset, opts) +1055 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1054 def unlimited -1055 cached_dataset(:_unlimited_ds){clone(:limit=>nil, :offset=>nil)} -1056 end+1060 def unlimited +1061 cached_dataset(:_unlimited_ds){clone(:limit=>nil, :offset=>nil)} +1062 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1061 def unordered -1062 cached_dataset(:_unordered_ds){clone(:order=>nil)} -1063 end+1067 def unordered +1068 cached_dataset(:_unordered_ds){clone(:order=>nil)} +1069 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1107 def where(*cond, &block) -1108 add_filter(:where, cond, &block) -1109 end+1113 def where(*cond, &block) +1114 add_filter(:where, cond, &block) +1115 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1117 def window(name, opts) -1118 clone(:window=>((@opts[:window]||EMPTY_ARRAY) + [[name, SQL::Window.new(opts)].freeze]).freeze) -1119 end+1123 def window(name, opts) +1124 clone(:window=>((@opts[:window]||EMPTY_ARRAY) + [[name, SQL::Window.new(opts)].freeze]).freeze) +1125 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1132 def with(name, dataset, opts=OPTS) -1133 raise(Error, 'This dataset does not support common table expressions') unless supports_cte? -1134 if hoist_cte?(dataset) -1135 s, ds = hoist_cte(dataset) -1136 s.with(name, ds, opts) -1137 else -1138 clone(:with=>((@opts[:with]||EMPTY_ARRAY) + [Hash[opts].merge!(:name=>name, :dataset=>dataset)]).freeze) -1139 end -1140 end+1138 def with(name, dataset, opts=OPTS) +1139 raise(Error, 'This dataset does not support common table expressions') unless supports_cte? +1140 if hoist_cte?(dataset) +1141 s, ds = hoist_cte(dataset) +1142 s.with(name, ds, opts) +1143 else +1144 clone(:with=>((@opts[:with]||EMPTY_ARRAY) + [Hash[opts].merge!(:name=>name, :dataset=>dataset)]).freeze) +1145 end +1146 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1221 def with_extend(*mods, &block) -1222 c = Class.new(self.class) -1223 c.include(*mods) unless mods.empty? -1224 c.include(DatasetModule.new(&block)) if block -1225 o = c.freeze.allocate -1226 o.instance_variable_set(:@db, @db) -1227 o.instance_variable_set(:@opts, @opts) -1228 o.instance_variable_set(:@cache, {}) -1229 if cols = cache_get(:_columns) -1230 o.send(:columns=, cols) -1231 end -1232 o.freeze -1233 end+1227 def with_extend(*mods, &block) +1228 c = Class.new(self.class) +1229 c.include(*mods) unless mods.empty? +1230 c.include(DatasetModule.new(&block)) if block +1231 o = c.freeze.allocate +1232 o.instance_variable_set(:@db, @db) +1233 o.instance_variable_set(:@opts, @opts) +1234 o.instance_variable_set(:@cache, {}) +1235 if cols = cache_get(:_columns) +1236 o.send(:columns=, cols) +1237 end +1238 o.freeze +1239 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1198 def with_recursive(name, nonrecursive, recursive, opts=OPTS) -1199 raise(Error, 'This dataset does not support common table expressions') unless supports_cte? -1200 if hoist_cte?(nonrecursive) -1201 s, ds = hoist_cte(nonrecursive) -1202 s.with_recursive(name, ds, recursive, opts) -1203 elsif hoist_cte?(recursive) -1204 s, ds = hoist_cte(recursive) -1205 s.with_recursive(name, nonrecursive, ds, opts) -1206 else -1207 clone(:with=>((@opts[:with]||EMPTY_ARRAY) + [Hash[opts].merge!(:recursive=>true, :name=>name, :dataset=>nonrecursive.union(recursive, {:all=>opts[:union_all] != false, :from_self=>false}))]).freeze) -1208 end -1209 end+1204 def with_recursive(name, nonrecursive, recursive, opts=OPTS) +1205 raise(Error, 'This dataset does not support common table expressions') unless supports_cte? +1206 if hoist_cte?(nonrecursive) +1207 s, ds = hoist_cte(nonrecursive) +1208 s.with_recursive(name, ds, recursive, opts) +1209 elsif hoist_cte?(recursive) +1210 s, ds = hoist_cte(recursive) +1211 s.with_recursive(name, nonrecursive, ds, opts) +1212 else +1213 clone(:with=>((@opts[:with]||EMPTY_ARRAY) + [Hash[opts].merge!(:recursive=>true, :name=>name, :dataset=>nonrecursive.union(recursive, {:all=>opts[:union_all] != false, :from_self=>false}))]).freeze) +1214 end +1215 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1250 def with_row_proc(callable) -1251 clone(:row_proc=>callable) -1252 end+1256 def with_row_proc(callable) +1257 clone(:row_proc=>callable) +1258 end
Public Instance methods
[show source]# File lib/sequel/dataset/query.rb -1284 def with_sql(sql, *args) -1285 if sql.is_a?(Symbol) -1286 sql = public_send(sql, *args) -1287 else -1288 sql = SQL::PlaceholderLiteralString.new(sql, args) unless args.empty? -1289 end -1290 clone(:sql=>sql) -1291 end+1290 def with_sql(sql, *args) +1291 if sql.is_a?(Symbol) +1292 sql = public_send(sql, *args) +1293 else +1294 sql = SQL::PlaceholderLiteralString.new(sql, args) unless args.empty? +1295 end +1296 clone(:sql=>sql) +1297 end
Protected Instance methods
@@ -2732,14 +2754,14 @@Protected Instance methods
[show source]# File lib/sequel/dataset/query.rb -1296 def compound_clone(type, dataset, opts) -1297 if dataset.is_a?(Dataset) && dataset.opts[:with] && !supports_cte_in_compounds? -1298 s, ds = hoist_cte(dataset) -1299 return s.compound_clone(type, ds, opts) -1300 end -1301 ds = compound_from_self.clone(:compounds=>(Array(@opts[:compounds]).map(&:dup) + [[type, dataset.compound_from_self, opts[:all]].freeze]).freeze) -1302 opts[:from_self] == false ? ds : ds.from_self(opts) -1303 end+1302 def compound_clone(type, dataset, opts) +1303 if dataset.is_a?(Dataset) && dataset.opts[:with] && !supports_cte_in_compounds? +1304 s, ds = hoist_cte(dataset) +1305 return s.compound_clone(type, ds, opts) +1306 end +1307 ds = compound_from_self.clone(:compounds=>(Array(@opts[:compounds]).map(&:dup) + [[type, dataset.compound_from_self, opts[:all]].freeze]).freeze) +1308 opts[:from_self] == false ? ds : ds.from_self(opts) +1309 end
Protected Instance methods
[show source]# File lib/sequel/dataset/query.rb -1306 def options_overlap(opts) -1307 !(@opts.map{|k,v| k unless v.nil?}.compact & opts).empty? -1308 end+1312 def options_overlap(opts) +1313 !(@opts.map{|k,v| k unless v.nil?}.compact & opts).empty? +1314 end
Protected Instance methods
[show source]# File lib/sequel/dataset/query.rb -1317 def simple_select_all? -1318 return false unless (f = @opts[:from]) && f.length == 1 -1319 o = @opts.reject{|k,v| v.nil? || non_sql_option?(k)} -1320 from = f.first -1321 from = from.expression if from.is_a?(SQL::AliasedExpression) -1322 -1323 if SIMPLE_SELECT_ALL_ALLOWED_FROM.any?{|x| from.is_a?(x)} -1324 case o.length -1325 when 1 -1326 true -1327 when 2 -1328 (s = o[:select]) && s.length == 1 && s.first.is_a?(SQL::ColumnAll) -1329 else -1330 false -1331 end -1332 else -1333 false -1334 end -1335 end+1323 def simple_select_all? +1324 return false unless (f = @opts[:from]) && f.length == 1 +1325 o = @opts.reject{|k,v| v.nil? || non_sql_option?(k)} +1326 from = f.first +1327 from = from.expression if from.is_a?(SQL::AliasedExpression) +1328 +1329 if SIMPLE_SELECT_ALL_ALLOWED_FROM.any?{|x| from.is_a?(x)} +1330 case o.length +1331 when 1 +1332 true +1333 when 2 +1334 (s = o[:select]) && s.length == 1 && s.first.is_a?(SQL::ColumnAll) +1335 else +1336 false +1337 end +1338 else +1339 false +1340 end +1341 end
module
Class methods for Sequel::Model
that implement basic model functionality.
-
-
All of the following methods have class methods created that send the method to the model’s dataset: all, as_hash, avg, count, cross_join, distinct, each, each_server, empty?, except, exclude, exclude_having, fetch_rows, filter, first, first!, for_update, from, from_self, full_join, full_outer_join, get, graph, grep, group, group_and_count, group_append, group_by, having, import, inner_join, insert, intersect, invert, join, join_table, last, left_join, left_outer_join, limit, lock_style, map, max, min, multi_insert, naked, natural_full_join, natural_join, natural_left_join, natural_right_join, offset, order, order_append, order_by, order_more, order_prepend, paged_each, qualify, reverse, reverse_order, right_join, right_outer_join, select, select_all, select_append, select_group, select_hash, select_hash_groups, select_map, select_more, select_order_map, server, single_record, single_record!, single_value, single_value!, sum, to_hash, to_hash_groups, truncate, unfiltered, ungraphed, ungrouped, union, unlimited, unordered, where, where_all, where_each, where_single_value, with, with_recursive, with_sql
+All of the following methods have class methods created that send the method to the model’s dataset: all, as_hash, avg, count, cross_join, distinct, each, each_server, empty?, except, exclude, exclude_having, fetch_rows, filter, first, first!, for_update, from, from_self, full_join, full_outer_join, get, graph, grep, group, group_and_count, group_append, group_by, having, import, inner_join, insert, intersect, invert, join, join_table, last, left_join, left_outer_join, limit, lock_style, map, max, min, multi_insert, naked, natural_full_join, natural_join, natural_left_join, natural_right_join, offset, order, order_append, order_by, order_more, order_prepend, paged_each, qualify, reverse, reverse_order, right_join, right_outer_join, select, select_all, select_append, select_group, select_hash, select_hash_groups, select_map, select_more, select_order_map, select_prepend, server, single_record, single_record!, single_value, single_value!, sum, to_hash, to_hash_groups, truncate, unfiltered, ungraphed, ungrouped, union, unlimited, unordered, where, where_all, where_each, where_single_value, with, with_recursive, with_sql
diff --git a/rdoc/created.rid b/rdoc/created.rid
index c84c91baa..5157a5bc6 100644
--- a/rdoc/created.rid
+++ b/rdoc/created.rid
@@ -1,6 +1,6 @@
-Fri, 01 Mar 2024 09:18:02 -0800
-README.rdoc Tue, 19 Sep 2023 10:01:52 -0700
-CHANGELOG Fri, 01 Mar 2024 08:29:33 -0800
+Mon, 01 Apr 2024 09:18:31 -0700
+README.rdoc Sun, 31 Mar 2024 10:39:03 -0700
+CHANGELOG Sun, 31 Mar 2024 10:39:03 -0700
doc/CHANGELOG.old Tue, 04 Aug 2020 18:11:34 -0700
MIT-LICENSE Tue, 03 Jan 2023 11:20:51 -0800
lib/sequel.rb Tue, 01 Aug 2017 08:12:00 -0700
@@ -14,7 +14,7 @@ lib/sequel/exceptions.rb Fri, 02 Feb 2024 13:06:09 -0800
lib/sequel/model.rb Tue, 04 Aug 2020 18:11:34 -0700
lib/sequel/sql.rb Fri, 02 Sep 2022 09:11:30 -0700
lib/sequel/timezones.rb Fri, 17 Dec 2021 16:59:47 -0800
-lib/sequel/version.rb Fri, 01 Mar 2024 08:29:33 -0800
+lib/sequel/version.rb Sun, 31 Mar 2024 10:39:03 -0700
lib/sequel/connection_pool/sharded_single.rb Fri, 17 Dec 2021 16:59:47 -0800
lib/sequel/connection_pool/sharded_threaded.rb Mon, 12 Jun 2023 13:05:49 -0700
lib/sequel/connection_pool/sharded_timed_queue.rb Mon, 12 Jun 2023 13:05:49 -0700
@@ -29,20 +29,20 @@ lib/sequel/database/logging.rb Fri, 30 Aug 2019 08:15:18 -0700
lib/sequel/database/misc.rb Wed, 21 Feb 2024 09:59:48 -0800
lib/sequel/database/query.rb Wed, 21 Dec 2022 15:06:01 -0800
lib/sequel/database/schema_generator.rb Tue, 28 Mar 2023 07:40:44 -0700
-lib/sequel/database/schema_methods.rb Thu, 25 Jan 2024 14:58:57 -0800
+lib/sequel/database/schema_methods.rb Wed, 27 Mar 2024 08:37:52 -0700
lib/sequel/database/transactions.rb Thu, 21 Sep 2023 15:53:42 -0700
lib/sequel/dataset/actions.rb Thu, 21 Sep 2023 15:53:42 -0700
-lib/sequel/dataset/dataset_module.rb Mon, 20 Nov 2017 16:04:32 -0800
+lib/sequel/dataset/dataset_module.rb Wed, 13 Mar 2024 15:31:48 -0700
lib/sequel/dataset/deprecated_singleton_class_methods.rb Thu, 23 Mar 2023 10:05:41 -0700
lib/sequel/dataset/features.rb Fri, 29 Dec 2023 08:57:16 -0800
lib/sequel/dataset/graph.rb Tue, 19 Mar 2019 16:51:03 -0700
lib/sequel/dataset/misc.rb Mon, 23 Jan 2023 11:36:37 -0800
lib/sequel/dataset/placeholder_literalizer.rb Mon, 23 Jan 2023 11:36:37 -0800
lib/sequel/dataset/prepared_statements.rb Wed, 02 Dec 2020 15:37:08 -0800
-lib/sequel/dataset/query.rb Fri, 31 Mar 2023 14:57:15 -0700
+lib/sequel/dataset/query.rb Fri, 29 Mar 2024 12:44:07 -0700
lib/sequel/dataset/sql.rb Fri, 29 Dec 2023 08:57:16 -0800
lib/sequel/model/associations.rb Fri, 19 Jan 2024 15:26:00 -0800
-lib/sequel/model/base.rb Fri, 19 Jan 2024 09:09:26 -0800
+lib/sequel/model/base.rb Wed, 13 Mar 2024 15:29:18 -0700
lib/sequel/model/dataset_module.rb Wed, 17 May 2023 15:31:47 -0700
lib/sequel/model/default_inflections.rb Tue, 01 Aug 2017 08:12:01 -0700
lib/sequel/model/errors.rb Mon, 09 Aug 2021 13:30:01 -0700
@@ -55,7 +55,7 @@ doc/bin_sequel.rdoc Thu, 10 Aug 2017 09:06:47 -0700
doc/cheat_sheet.rdoc Fri, 21 Oct 2022 08:19:04 -0700
doc/code_order.rdoc Wed, 04 Nov 2020 10:39:50 -0800
doc/core_extensions.rdoc Tue, 01 Aug 2017 08:12:00 -0700
-doc/dataset_basics.rdoc Tue, 01 Aug 2017 08:12:00 -0700
+doc/dataset_basics.rdoc Wed, 13 Mar 2024 15:32:20 -0700
doc/dataset_filtering.rdoc Tue, 14 Jul 2020 07:08:21 -0700
doc/extensions.rdoc Tue, 01 Aug 2017 08:12:00 -0700
doc/fork_safety.rdoc Wed, 04 Nov 2020 10:39:50 -0800
@@ -66,10 +66,10 @@ doc/model_hooks.rdoc Fri, 21 Oct 2022 08:19:04 -0700
doc/model_plugins.rdoc Mon, 31 Aug 2020 08:10:12 -0700
doc/mssql_stored_procedures.rdoc Tue, 01 Aug 2017 08:12:00 -0700
doc/object_model.rdoc Fri, 21 Oct 2022 08:19:04 -0700
-doc/opening_databases.rdoc Wed, 27 Dec 2023 10:10:07 -0800
+doc/opening_databases.rdoc Wed, 13 Mar 2024 16:18:36 -0700
doc/postgresql.rdoc Fri, 21 Oct 2022 08:19:04 -0700
doc/prepared_statements.rdoc Tue, 01 Aug 2017 08:12:00 -0700
-doc/querying.rdoc Mon, 17 Oct 2022 09:39:14 -0700
+doc/querying.rdoc Wed, 13 Mar 2024 15:34:19 -0700
doc/reflection.rdoc Tue, 01 Aug 2017 08:12:00 -0700
doc/schema_modification.rdoc Thu, 01 Feb 2024 15:00:17 -0800
doc/security.rdoc Fri, 21 Oct 2022 08:19:04 -0700
@@ -274,6 +274,7 @@ doc/release_notes/5.75.0.txt Fri, 01 Dec 2023 08:25:58 -0800
doc/release_notes/5.76.0.txt Mon, 01 Jan 2024 09:04:44 -0800
doc/release_notes/5.77.0.txt Thu, 01 Feb 2024 08:27:41 -0800
doc/release_notes/5.78.0.txt Fri, 01 Mar 2024 08:29:33 -0800
+doc/release_notes/5.79.0.txt Mon, 01 Apr 2024 09:04:21 -0700
doc/release_notes/5.8.0.txt Tue, 01 May 2018 11:42:13 -0700
doc/release_notes/5.9.0.txt Fri, 01 Jun 2018 07:49:41 -0700
lib/sequel/extensions/migration.rb Fri, 02 Feb 2024 13:06:09 -0800
diff --git a/rdoc/files/CHANGELOG.html b/rdoc/files/CHANGELOG.html
index 225936ce3..060aaf49a 100644
--- a/rdoc/files/CHANGELOG.html
+++ b/rdoc/files/CHANGELOG.html
@@ -31,12 +31,21 @@ CHANGELOG
Last Update:
-2024-03-01 08:29:33 -0800
+2024-03-31 10:39:03 -0700
+5.79.0 (2024-04-01)¶ ↑
+-
+
Support create_or_replace_view with :materialized option on PostgreSQL (nashby) (#2144)
+ -
+
Support :unlogged_tables_default Database option on Postgres for making created tables unlogged by default (jeremyevans) (#2134)
+ -
+
Add Dataset#select_prepend for prepending to the current selected columns (jeremyevans) (#2139)
+
+
5.78.0 (2024-03-01)¶ ↑
-
Support SQLite 3.45+ jsonb functions in the sqlite_json_ops extension (jeremyevans) (#2133)
diff --git a/rdoc/files/README_rdoc.html b/rdoc/files/README_rdoc.html
index ba0ce7084..8b766d27e 100644
--- a/rdoc/files/README_rdoc.html
+++ b/rdoc/files/README_rdoc.html
@@ -31,7 +31,7 @@ README.rdoc
Last Update:
-2023-09-19 10:01:52 -0700
+2024-03-31 10:39:03 -0700
@@ -61,11 +61,11 @@ Resources¶ github.com/jeremyevans/sequel/issues
Class methods for Sequel::Model
that implement basic model functionality.
-
-
All of the following methods have class methods created that send the method to the model’s dataset: all, as_hash, avg, count, cross_join, distinct, each, each_server, empty?, except, exclude, exclude_having, fetch_rows, filter, first, first!, for_update, from, from_self, full_join, full_outer_join, get, graph, grep, group, group_and_count, group_append, group_by, having, import, inner_join, insert, intersect, invert, join, join_table, last, left_join, left_outer_join, limit, lock_style, map, max, min, multi_insert, naked, natural_full_join, natural_join, natural_left_join, natural_right_join, offset, order, order_append, order_by, order_more, order_prepend, paged_each, qualify, reverse, reverse_order, right_join, right_outer_join, select, select_all, select_append, select_group, select_hash, select_hash_groups, select_map, select_more, select_order_map, server, single_record, single_record!, single_value, single_value!, sum, to_hash, to_hash_groups, truncate, unfiltered, ungraphed, ungrouped, union, unlimited, unordered, where, where_all, where_each, where_single_value, with, with_recursive, with_sql
+All of the following methods have class methods created that send the method to the model’s dataset: all, as_hash, avg, count, cross_join, distinct, each, each_server, empty?, except, exclude, exclude_having, fetch_rows, filter, first, first!, for_update, from, from_self, full_join, full_outer_join, get, graph, grep, group, group_and_count, group_append, group_by, having, import, inner_join, insert, intersect, invert, join, join_table, last, left_join, left_outer_join, limit, lock_style, map, max, min, multi_insert, naked, natural_full_join, natural_join, natural_left_join, natural_right_join, offset, order, order_append, order_by, order_more, order_prepend, paged_each, qualify, reverse, reverse_order, right_join, right_outer_join, select, select_all, select_append, select_group, select_hash, select_hash_groups, select_map, select_more, select_order_map, select_prepend, server, single_record, single_record!, single_value, single_value!, sum, to_hash, to_hash_groups, truncate, unfiltered, ungraphed, ungrouped, union, unlimited, unordered, where, where_all, where_each, where_single_value, with, with_recursive, with_sql
CHANGELOG
5.79.0 (2024-04-01)¶ ↑
+-
+
Support create_or_replace_view with :materialized option on PostgreSQL (nashby) (#2144)
+ -
+
Support :unlogged_tables_default Database option on Postgres for making created tables unlogged by default (jeremyevans) (#2134)
+ -
+
Add Dataset#select_prepend for prepending to the current selected columns (jeremyevans) (#2139)
+
5.78.0 (2024-03-01)¶ ↑
-
Support SQLite 3.45+ jsonb functions in the sqlite_json_ops extension (jeremyevans) (#2133)
diff --git a/rdoc/files/README_rdoc.html b/rdoc/files/README_rdoc.html index ba0ce7084..8b766d27e 100644 --- a/rdoc/files/README_rdoc.html +++ b/rdoc/files/README_rdoc.html @@ -31,7 +31,7 @@README.rdoc
Resources¶ github.com/jeremyevans/sequel/issues
If you have questions about how to use Sequel
, please ask on GitHub Discussions or the sequel-talk Google Group. Only use the the bug tracker to report bugs in Sequel
, not to ask for help on using Sequel
.
If you have questions about how to use Sequel
, please ask on GitHub Discussions. Only use the the bug tracker to report bugs in Sequel
, not to ask for help on using Sequel
.
To check out the source code:
@@ -446,10 +446,12 @@Selecting Columns# SELECT name FROM posts -
As you might expect, there is an order_append
equivalent for select
called select_append
:
As you might expect, there are order_append
and order_prepend
equivalents for select
called select_append
and select_prepend
:
posts.select(:stamp).select_append(:name) # SELECT stamp, name FROM posts +posts.select(:stamp).select_prepend(:name) +# SELECT name, stamp FROM posts