[sqlite] Process duplicate field values

2016-02-20 Thread ad...@shuling.net
No. Originally I think since task 2 and 3 are operations performed on the
same set of records, maybe they can be merged to improved the performance
though one is get and another is set.

Thank you very much

> -Original Message-
> From: sqlite-users-bounces at mailinglists.sqlite.org [mailto:sqlite-users-
> bounces at mailinglists.sqlite.org] On Behalf Of Igor Tandetnik
> Sent: Friday, February 19, 2016 11:04 PM
> To: sqlite-users at mailinglists.sqlite.org
> Subject: Re: [sqlite] Process duplicate field values
> 
> On 2/19/2016 1:00 AM, admin at shuling.net wrote:
> >  1. For all conflict records, get the total count of distinct F1
values.
> > In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but
> > the distinct values are only 1, 2, 3 so the total count should be 3.
> >  2. Get the total count of all the conflict records. In the above
> > sample, it should be 6.
> 
> select count(*) CountOfConflictGroups, sum(c) CountOfConflictRecords from
> (
>   select count(*) c from MyTable group by F1 having count(*) > 1 );
> 
> >  3. Set the F2 value of all the conflict records to 9. Keep all
> > other records intact.
> 
> update MyTable set F2=9 where F1 in
> (select t.F1 from MyTable t group by t.F1 having count(*) > 1);
> 
> > Can task 2 and 3 be implemented in one SQL query
> 
> No. One is a "get", the other is  a "set". A single SQL query can't do
both. Did
> you mean tasks 1 and 2, perhaps?
> --
> Igor Tandetnik
> 
> ___
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users



[sqlite] Process duplicate field values

2016-02-19 Thread Igor Tandetnik
On 2/19/2016 8:16 PM, admin at shuling.net wrote:
> No. Originally I think since task 2 and 3 are operations performed on the
> same set of records, maybe they can be merged to improved the performance
> though one is get and another is set.

Ah. Perhaps you are looking for sqlite3_changes() API function. It tells 
you how many rows where touched by the most recent data modification 
statement. So you can call it right after performing the UPDATE.
-- 
Igor Tandetnik



[sqlite] Process duplicate field values

2016-02-19 Thread Keith Medcalf

This is called premature optimization.  It is the root of all Evil.

In DonaldKnuth's paper "StructuredProgrammingWithGoToStatements", he wrote: 
"Programmers waste enormous amounts of time thinking about, or worrying about, 
the speed of noncritical parts of their programs, and these attempts at 
efficiency actually have a strong negative impact when debugging and 
maintenance are considered. We should forget about small efficiencies, say 
about 97% of the time: premature optimization is the root of all evil. Yet we 
should not pass up our opportunities in that critical 3%." 

Also, there is absolutely no advantage to be gained over doing just a blind 
update -- there is no need to perform the select at all -- if you are going to 
do the update if any records are found to update -- the select will be for 
"entertainment system" value only and there is no need to do it at all.  This 
is the optimization which has value.

If you plan to use the select to discover merely whether or not you need to do 
the update, then you may as well just do the update.  If no update statement 
finds that there are no updates required, it will not do any updates.  If there 
are updates required, you have cut the time required to perform them in half by 
eliminating the useless extraneous step.

> No. Originally I think since task 2 and 3 are operations performed on the
> same set of records, maybe they can be merged to improved the performance
> though one is get and another is set.
> 
> Thank you very much
> 
> > -Original Message-
> > From: sqlite-users-bounces at mailinglists.sqlite.org [mailto:sqlite-users-
> > bounces at mailinglists.sqlite.org] On Behalf Of Igor Tandetnik
> > Sent: Friday, February 19, 2016 11:04 PM
> > To: sqlite-users at mailinglists.sqlite.org
> > Subject: Re: [sqlite] Process duplicate field values
> >
> > On 2/19/2016 1:00 AM, admin at shuling.net wrote:
> > >  1. For all conflict records, get the total count of distinct F1
> values.
> > > In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but
> > > the distinct values are only 1, 2, 3 so the total count should be 3.
> > >  2. Get the total count of all the conflict records. In the above
> > > sample, it should be 6.
> >
> > select count(*) CountOfConflictGroups, sum(c) CountOfConflictRecords
> from
> > (
> >   select count(*) c from MyTable group by F1 having count(*) > 1 );
> >
> > >  3. Set the F2 value of all the conflict records to 9. Keep all
> > > other records intact.
> >
> > update MyTable set F2=9 where F1 in
> > (select t.F1 from MyTable t group by t.F1 having count(*) > 1);
> >
> > > Can task 2 and 3 be implemented in one SQL query
> >
> > No. One is a "get", the other is  a "set". A single SQL query can't do
> both. Did
> > you mean tasks 1 and 2, perhaps?
> > --
> > Igor Tandetnik
> >
> > ___
> > sqlite-users mailing list
> > sqlite-users at mailinglists.sqlite.org
> > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
> 
> ___
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users





[sqlite] Process duplicate field values

2016-02-19 Thread ad...@shuling.net
Hi,

Thank you.

In that case, is there a way to create a table which contains only the
records that have duplicate F1 values?

Thanks



> -Original Message-
> From: sqlite-users-bounces at mailinglists.sqlite.org [mailto:sqlite-users-
> bounces at mailinglists.sqlite.org] On Behalf Of R Smith
> Sent: Friday, February 19, 2016 5:41 PM
> To: sqlite-users at mailinglists.sqlite.org
> Subject: Re: [sqlite] Process duplicate field values
> 
> 
> 
> On 2016/02/19 8:00 AM, admin at shuling.net wrote:
> > Hi,
> >
> >
> >
> > I create a table as follows:
> >
> >
> >
> > CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER);
> >
> >
> >
> > Then add the following records:
> >
> >
> >
> > INSERT INTO MyTable (F1, F2) Values (1, 2);
> >
> > INSERT INTO MyTable (F1, F2) Values (1, 3);
> >
> > INSERT INTO MyTable (F1, F2) Values (2, 4);
> >
> > INSERT INTO MyTable (F1, F2) Values (2, 5);
> >
> > INSERT INTO MyTable (F1, F2) Values (3, 6);
> >
> > INSERT INTO MyTable (F1, F2) Values (3, 7);
> >
> > INSERT INTO MyTable (F1, F2) Values (4, 2);
> >
> >
> >
> > Now if two records have the same value of F1, then I will define them
> > as conflict records.
> >
> >
> >
> > Now I need to perform the following tasks:
> >
> >
> >
> >  1. For all conflict records, get the total count of distinct F1
values.
> > In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but
> > the distinct values are only 1, 2, 3 so the total count should be 3.
> >  2. Get the total count of all the conflict records. In the above
> > sample, it should be 6.
> >  3. Set the F2 value of all the conflict records to 9. Keep all
> > other records intact.
> >
> >
> >
> > How to do that? Can task 2 and 3 be implemented in one SQL query to
> > improve the performance?
> 
> I think you meant to use the word "Duplicate" where you said "Distinct".
> You need the number of Duplicate F1 records, which is 3.
> 
> Then you need the total count of records that might be duplicated for F1,
> which is 6 in the above case.
> 
> This all is easy and Hick's solution will work.
> 
> As to the question of doing 2 and 3 together, how can that ever be? 3 does
> an update, and 2 expects a return value. There is no mix and match updates
> and selects (Though Postgres has a great way of doing a bit of
> both) - but apart from some convenience to the query creator, it has no
real
> efficiency advantage, which is why it's not really done.
> 
> Best efficiency would be a temp table to avoid multiple walking of the
original
> table and be very fast for even large datasets - I would advise this way
> perhaps:
> 
> 
> 
>-- Processing SQL in: E:\Documents\SQLiteAutoScript.sql
>-- SQLite version 3.9.2  [ Release: 2015-11-02 ]  on SQLitespeed
version
> 2.0.2.4.
> 
>-- Script Items: 10 Parameter Count: 0
>-- 2016-02-19 11:35:58.596  |  [Info]   Script Initialized,
> Started executing...
>--
> ==
> ==
> 
> 
> CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER);
> 
> INSERT INTO MyTable (F1, F2) Values
>   (1, 2)
> ,(1, 3)
> ,(2, 4)
> ,(2, 5)
> ,(3, 6)
> ,(3, 7)
> ,(4, 2)
> ;
> 
> CREATE TEMP TABLE F1Dups (F1_ID INTEGER PRIMARY KEY, F1_Count INT);
> 
> INSERT INTO F1Dups SELECT DISTINCT B.F1, 0
>FROM MyTable AS A
>   INNER JOIN MyTable AS B ON B.F1 = A.F1
>   WHERE  B.rowid <> A.rowid;
> 
> UPDATE F1Dups SET F1_Count = (SELECT COUNT(*) FROM MyTable WHERE
> MyTable.F1=F1Dups.F1_ID);
> 
> 
> SELECT COUNT(*) AS Dist_Confl FROM F1Dups;
> 
>--  Dist_Confl
>-- 
>--   3
> 
> SELECT SUM(F1_Count) AS All_Conf FROM F1Dups;
> 
>--   All_Conf
>-- 
>--   6
> 
> 
> UPDATE MyTable SET F2=9 WHERE F1 IN (SELECT F1_ID FROM F1Dups);
> 
> SELECT * FROM MyTable;
> 
>--  F1 |  F2
>-- --- | ---
>--  1  |  9
>--  1  |  9
>--  2  |  9
>--  2  |  9
>--  3  |  9
>--  3  |  9
>--  4  |  2
> 
> DROP TABLE F1Dups;
> 
> 
>--   Script Stats: Total Script Execution Time: 0d 00h 00m and
> 00.031s
>-- Total Script Query Time: -- --- --- ---
> --.
>-- Total Database Rows Changed: 19
>-- Total Virtual-Machine Steps: 717
>-- Last executed Item Index:10
>-- Last Script Error:
>--
>

--
> --
> 
> 
> ___
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users



[sqlite] Process duplicate field values

2016-02-19 Thread ad...@shuling.net
Hi

Sorry for the confusion.

The distinct values for F1 is only 1, 2 and 3, so the distinct value count is 
3. However, there are totally 6 records that have duplicate F1 values. The task 
2 is to calculate the total count of conflict records so it is 6.

Hope that explain the issue clearly.

Thanks


> 
> You start explaining that because the distinct values are only 1, 2, 3, the 
> 'total
> count' should be 3.  Then on the next line, you say wanting to get the 'total
> count' and say it should be 6. You lost me between those lines. :)
> 
> --
> Meilleures salutations, Met vriendelijke groeten, Best Regards, Olivier
> Mascia, integral.be/om
> 




[sqlite] Process duplicate field values

2016-02-19 Thread ad...@shuling.net
Hi,

Thank you very much.

Can task 2 and 3 be performed in one query to improve the performance?

Thanks



> -Original Message-
> From: sqlite-users-bounces at mailinglists.sqlite.org [mailto:sqlite-users-
> bounces at mailinglists.sqlite.org] On Behalf Of Hick Gunter
> Sent: Friday, February 19, 2016 3:23 PM
> To: 'SQLite mailing list'
> Subject: Re: [sqlite] Process duplicate field values
> Sensitivity: Confidential
> 
> Basic idea, no testing
> 
> The core query is
> 
> Select F1 as key,count() as count from MyTable group by F1 having count>1;
> 
> The number of distinct F1 values is
> 
> select count() from ()
> 
> The number of conflict records is
> 
> Select sum(count) from ()
> 
> And the update would be
> 
> Update MyTable set F2=9 where F1 in select key from ()
> 
> The core query could also be declared as a view or as a CTE
> 
> -Urspr?ngliche Nachricht-
> Von: sqlite-users-bounces at mailinglists.sqlite.org [mailto:sqlite-users-
> bounces at mailinglists.sqlite.org] Im Auftrag von admin at shuling.net
> Gesendet: Freitag, 19. Februar 2016 07:01
> An: sqlite-users at mailinglists.sqlite.org
> Betreff: [sqlite] Process duplicate field values
> Wichtigkeit: Hoch
> Vertraulichkeit: Vertraulich
> 
> Hi,
> 
> 
> 
> I create a table as follows:
> 
> 
> 
> CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER);
> 
> 
> 
> Then add the following records:
> 
> 
> 
> INSERT INTO MyTable (F1, F2) Values (1, 2);
> 
> INSERT INTO MyTable (F1, F2) Values (1, 3);
> 
> INSERT INTO MyTable (F1, F2) Values (2, 4);
> 
> INSERT INTO MyTable (F1, F2) Values (2, 5);
> 
> INSERT INTO MyTable (F1, F2) Values (3, 6);
> 
> INSERT INTO MyTable (F1, F2) Values (3, 7);
> 
> INSERT INTO MyTable (F1, F2) Values (4, 2);
> 
> 
> 
> Now if two records have the same value of F1, then I will define them as
> conflict records.
> 
> 
> 
> Now I need to perform the following tasks:
> 
> 
> 
> 1. For all conflict records, get the total count of distinct F1 values.
> In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but the 
> distinct
> values are only 1, 2, 3 so the total count should be 3.
> 2. Get the total count of all the conflict records. In the above sample, 
> it
> should be 6.
> 3. Set the F2 value of all the conflict records to 9. Keep all other 
> records
> intact.
> 
> 
> 
> How to do that? Can task 2 and 3 be implemented in one SQL query to
> improve the performance?
> 
> 
> 
> Thanks
> 
> 
> 
> ___
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
> 
> 
> ___
>  Gunter Hick
> Software Engineer
> Scientific Games International GmbH
> FN 157284 a, HG Wien
> Klitschgasse 2-4, A-1130 Vienna, Austria
> Tel: +43 1 80100 0
> E-Mail: hick at scigames.at
> 
> This communication (including any attachments) is intended for the use of
> the intended recipient(s) only and may contain information that is
> confidential, privileged or legally protected. Any unauthorized use or
> dissemination of this communication is strictly prohibited. If you have
> received this communication in error, please immediately notify the sender
> by return e-mail message and delete all copies of the original communication.
> Thank you for your cooperation.
> 
> 
> ___
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users



[sqlite] Process duplicate field values

2016-02-19 Thread ad...@shuling.net
Hi,



I create a table as follows:



CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER);



Then add the following records:



INSERT INTO MyTable (F1, F2) Values (1, 2);

INSERT INTO MyTable (F1, F2) Values (1, 3);

INSERT INTO MyTable (F1, F2) Values (2, 4);

INSERT INTO MyTable (F1, F2) Values (2, 5);

INSERT INTO MyTable (F1, F2) Values (3, 6);

INSERT INTO MyTable (F1, F2) Values (3, 7);

INSERT INTO MyTable (F1, F2) Values (4, 2);



Now if two records have the same value of F1, then I will define them as
conflict records.



Now I need to perform the following tasks:



1. For all conflict records, get the total count of distinct F1 values.
In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but the
distinct values are only 1, 2, 3 so the total count should be 3.
2. Get the total count of all the conflict records. In the above sample,
it should be 6.
3. Set the F2 value of all the conflict records to 9. Keep all other
records intact.



How to do that? Can task 2 and 3 be implemented in one SQL query to improve
the performance?



Thanks





[sqlite] Process duplicate field values

2016-02-19 Thread R Smith


On 2016/02/19 8:00 AM, admin at shuling.net wrote:
> Hi,
>
>   
>
> I create a table as follows:
>
>   
>
> CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER);
>
>   
>
> Then add the following records:
>
>   
>
> INSERT INTO MyTable (F1, F2) Values (1, 2);
>
> INSERT INTO MyTable (F1, F2) Values (1, 3);
>
> INSERT INTO MyTable (F1, F2) Values (2, 4);
>
> INSERT INTO MyTable (F1, F2) Values (2, 5);
>
> INSERT INTO MyTable (F1, F2) Values (3, 6);
>
> INSERT INTO MyTable (F1, F2) Values (3, 7);
>
> INSERT INTO MyTable (F1, F2) Values (4, 2);
>
>   
>
> Now if two records have the same value of F1, then I will define them as
> conflict records.
>
>   
>
> Now I need to perform the following tasks:
>
>   
>
>  1. For all conflict records, get the total count of distinct F1 values.
> In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but the
> distinct values are only 1, 2, 3 so the total count should be 3.
>  2. Get the total count of all the conflict records. In the above sample,
> it should be 6.
>  3. Set the F2 value of all the conflict records to 9. Keep all other
> records intact.
>
>   
>
> How to do that? Can task 2 and 3 be implemented in one SQL query to improve
> the performance?

I think you meant to use the word "Duplicate" where you said "Distinct". 
You need the number of Duplicate F1 records, which is 3.

Then you need the total count of records that might be duplicated for 
F1, which is 6 in the above case.

This all is easy and Hick's solution will work.

As to the question of doing 2 and 3 together, how can that ever be? 3 
does an update, and 2 expects a return value. There is no mix and match 
updates and selects (Though Postgres has a great way of doing a bit of 
both) - but apart from some convenience to the query creator, it has no 
real efficiency advantage, which is why it's not really done.

Best efficiency would be a temp table to avoid multiple walking of the 
original table and be very fast for even large datasets - I would advise 
this way perhaps:



   -- Processing SQL in: E:\Documents\SQLiteAutoScript.sql
   -- SQLite version 3.9.2  [ Release: 2015-11-02 ]  on SQLitespeed 
version 2.0.2.4.

   -- Script Items: 10 Parameter Count: 0
   -- 2016-02-19 11:35:58.596  |  [Info]   Script Initialized, 
Started executing...
   -- 



CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER);

INSERT INTO MyTable (F1, F2) Values
  (1, 2)
,(1, 3)
,(2, 4)
,(2, 5)
,(3, 6)
,(3, 7)
,(4, 2)
;

CREATE TEMP TABLE F1Dups (F1_ID INTEGER PRIMARY KEY, F1_Count INT);

INSERT INTO F1Dups SELECT DISTINCT B.F1, 0
   FROM MyTable AS A
  INNER JOIN MyTable AS B ON B.F1 = A.F1
  WHERE  B.rowid <> A.rowid;

UPDATE F1Dups SET F1_Count = (SELECT COUNT(*) FROM MyTable WHERE 
MyTable.F1=F1Dups.F1_ID);


SELECT COUNT(*) AS Dist_Confl FROM F1Dups;

   --  Dist_Confl
   -- 
   --   3

SELECT SUM(F1_Count) AS All_Conf FROM F1Dups;

   --   All_Conf
   -- 
   --   6


UPDATE MyTable SET F2=9 WHERE F1 IN (SELECT F1_ID FROM F1Dups);

SELECT * FROM MyTable;

   --  F1 |  F2
   -- --- | ---
   --  1  |  9
   --  1  |  9
   --  2  |  9
   --  2  |  9
   --  3  |  9
   --  3  |  9
   --  4  |  2

DROP TABLE F1Dups;


   --   Script Stats: Total Script Execution Time: 0d 00h 00m and 
00.031s
   -- Total Script Query Time: -- --- --- --- 
--.
   -- Total Database Rows Changed: 19
   -- Total Virtual-Machine Steps: 717
   -- Last executed Item Index:10
   -- Last Script Error:
   -- 





[sqlite] Process duplicate field values

2016-02-19 Thread Igor Tandetnik
On 2/19/2016 1:00 AM, admin at shuling.net wrote:
>  1. For all conflict records, get the total count of distinct F1 values.
> In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but the
> distinct values are only 1, 2, 3 so the total count should be 3.
>  2. Get the total count of all the conflict records. In the above sample,
> it should be 6.

select count(*) CountOfConflictGroups, sum(c) CountOfConflictRecords from (
  select count(*) c from MyTable group by F1 having count(*) > 1
);

>  3. Set the F2 value of all the conflict records to 9. Keep all other
> records intact.

update MyTable set F2=9 where F1 in
(select t.F1 from MyTable t group by t.F1 having count(*) > 1);

> Can task 2 and 3 be implemented in one SQL query

No. One is a "get", the other is  a "set". A single SQL query can't do 
both. Did you mean tasks 1 and 2, perhaps?
-- 
Igor Tandetnik



[sqlite] Process duplicate field values

2016-02-19 Thread Olivier Mascia
> Le 19 f?vr. 2016 ? 07:00, admin at shuling.net a ?crit :
> 
>1. For all conflict records, get the total count of distinct F1 values.
> In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but the
> distinct values are only 1, 2, 3 so the total count should be 3.
>2. Get the total count of all the conflict records. In the above sample,
> it should be 6.

You start explaining that because the distinct values are only 1, 2, 3, the 
'total count' should be 3.  Then on the next line, you say wanting to get the 
'total count' and say it should be 6. You lost me between those lines. :)

--
Meilleures salutations, Met vriendelijke groeten, Best Regards,
Olivier Mascia, integral.be/om


-- next part --
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: 



[sqlite] Process duplicate field values

2016-02-19 Thread Hick Gunter
Basic idea, no testing

The core query is

Select F1 as key,count() as count from MyTable group by F1 having count>1;

The number of distinct F1 values is

select count() from ()

The number of conflict records is

Select sum(count) from ()

And the update would be

Update MyTable set F2=9 where F1 in select key from ()

The core query could also be declared as a view or as a CTE

-Urspr?ngliche Nachricht-
Von: sqlite-users-bounces at mailinglists.sqlite.org 
[mailto:sqlite-users-bounces at mailinglists.sqlite.org] Im Auftrag von admin 
at shuling.net
Gesendet: Freitag, 19. Februar 2016 07:01
An: sqlite-users at mailinglists.sqlite.org
Betreff: [sqlite] Process duplicate field values
Wichtigkeit: Hoch
Vertraulichkeit: Vertraulich

Hi,



I create a table as follows:



CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER);



Then add the following records:



INSERT INTO MyTable (F1, F2) Values (1, 2);

INSERT INTO MyTable (F1, F2) Values (1, 3);

INSERT INTO MyTable (F1, F2) Values (2, 4);

INSERT INTO MyTable (F1, F2) Values (2, 5);

INSERT INTO MyTable (F1, F2) Values (3, 6);

INSERT INTO MyTable (F1, F2) Values (3, 7);

INSERT INTO MyTable (F1, F2) Values (4, 2);



Now if two records have the same value of F1, then I will define them as 
conflict records.



Now I need to perform the following tasks:



1. For all conflict records, get the total count of distinct F1 values.
In the above sample, record 1, 2, 3, 4, 5, 6 are conflict records, but the 
distinct values are only 1, 2, 3 so the total count should be 3.
2. Get the total count of all the conflict records. In the above sample, it 
should be 6.
3. Set the F2 value of all the conflict records to 9. Keep all other 
records intact.



How to do that? Can task 2 and 3 be implemented in one SQL query to improve the 
performance?



Thanks



___
sqlite-users mailing list
sqlite-users at mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users


___
 Gunter Hick
Software Engineer
Scientific Games International GmbH
FN 157284 a, HG Wien
Klitschgasse 2-4, A-1130 Vienna, Austria
Tel: +43 1 80100 0
E-Mail: hick at scigames.at

This communication (including any attachments) is intended for the use of the 
intended recipient(s) only and may contain information that is confidential, 
privileged or legally protected. Any unauthorized use or dissemination of this 
communication is strictly prohibited. If you have received this communication 
in error, please immediately notify the sender by return e-mail message and 
delete all copies of the original communication. Thank you for your cooperation.