sqlstmt 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. data/lib/sqlstmt/select.rb +7 -1
  2. data/test/select.dt.rb +1 -0
  3. metadata +17 -7
@@ -8,6 +8,11 @@ class Select < FromQuery
8
8
  self
9
9
  end
10
10
 
11
+ def distinct
12
+ @distinct = true
13
+ self
14
+ end
15
+
11
16
  private
12
17
  def verify_minimum_requirements
13
18
  super
@@ -15,8 +20,9 @@ private
15
20
  end
16
21
 
17
22
  def build_stmt
23
+ distinct_str = if @distinct then 'DISTINCT ' else '' end
18
24
  select_str = @fields.join(',')
19
- "SELECT #{select_str}#{build_from_clause}"
25
+ "SELECT #{distinct_str}#{select_str}#{build_from_clause}"
20
26
  end
21
27
  end
22
28
 
data/test/select.dt.rb CHANGED
@@ -10,6 +10,7 @@ class TestSelect < DohTest::TestGroup
10
10
 
11
11
  def test_stuff
12
12
  assert_equal('SELECT blah FROM source', Select.new.table('source').field('blah').no_where.to_s)
13
+ assert_equal('SELECT DISTINCT blah FROM source', Select.new.table('source').field('blah').no_where.distinct.to_s)
13
14
  assert_equal('SELECT blah FROM source WHERE source_id = 1', Select.new.table('source').field('blah').where('source_id = 1').to_s)
14
15
  assert_equal('SELECT blah FROM source s', Select.new.table('source s').field('blah').no_where.to_s)
15
16
  assert_equal('SELECT blah FROM source s JOIN other o ON s.blah_id = o.blah_id', Select.new.table('source s').join('other o', 's.blah_id = o.blah_id').field('blah').no_where.to_s)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqlstmt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-03-14 00:00:00.000000000Z
13
+ date: 2012-07-26 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: dohutil
17
- requirement: &70104173090000 !ruby/object:Gem::Requirement
17
+ requirement: !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,15 @@ dependencies:
22
22
  version: 0.1.7
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70104173090000
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ! '>='
29
+ - !ruby/object:Gem::Version
30
+ version: 0.1.7
26
31
  - !ruby/object:Gem::Dependency
27
32
  name: dohtest
28
- requirement: &70104173071680 !ruby/object:Gem::Requirement
33
+ requirement: !ruby/object:Gem::Requirement
29
34
  none: false
30
35
  requirements:
31
36
  - - ! '>='
@@ -33,7 +38,12 @@ dependencies:
33
38
  version: 0.1.7
34
39
  type: :development
35
40
  prerelease: false
36
- version_requirements: *70104173071680
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: 0.1.7
37
47
  description: mysql centric (for now) object helpers for building SQL statements
38
48
  email:
39
49
  - devinfo@atpsoft.com
@@ -79,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
79
89
  version: '0'
80
90
  requirements: []
81
91
  rubyforge_project:
82
- rubygems_version: 1.8.15
92
+ rubygems_version: 1.8.24
83
93
  signing_key:
84
94
  specification_version: 3
85
95
  summary: helper for building SQL statements