Ferenc Bajan ferenc.bajan at gmail.com
2013. Feb. 19., K, 19:20:25 CET


2013. 02. 19, kedd keltezéssel 16.06-kor Dorozsmai Károly ezt írta:
Köszönöm, ezt is ki fogom próbálni :):):)
>
> 2013. február 19. 15:06 Kelemen Mihály írta, <kelemenm at tagdebr.sulinet.hu
>:
> Számított mező-re néha egyszerűbb feltételt írni.
>         Találtam valamit:
http://pisceansheart.wordpress.com/2008/04/15/count-occurrence-of-character-in-a-string-using-mysql/

Ez alapján (o1,o2,o3,o4,o5 a jegyek tábla megfelelő oszlopai):
1. A kihagyott helyeket feltöltöm lehetetlen értékkel:
update jegyek set o1=0 where isnull(o1);
ugyanez o2,o3,o4,o5 oszlopokra.
2. Ekkor a következő állapot van (mondjuk az én tesztadataimmal):

mysql> select * from jegyek;
+------+------+------+------+------+
| o1   | o2   | o3   | o4   | o5   |
+------+------+------+------+------+
|    1 |    2 |    1 |    1 |    2 |
|    1 |    2 |    1 |    2 |    1 |
|    1 |    1 |    1 |    2 |    1 |
|    1 |    1 |    5 |    5 |    5 |
|    1 |    1 |    2 |    2 |    2 |
|    1 |    3 |    2 |    2 |    2 |
|    1 |    0 |    3 |    2 |    2 |
|    1 |    3 |    0 |    1 |    2 |
+------+------+------+------+------+
8 rows in set (0.00 sec)

3. Ezután az eredmény:
mysql> select length(concat(o1,o2,o3,o4,o5)) \
       - length(replace(concat(o1,o2,o3,o4,o5),'1','')) \
       as 1_elofordulas from jegyek;
+---------------+
| 1_elofordulas |
+---------------+
|             3 |
|             3 |
|             4 |
|             2 |
|             2 |
|             1 |
|             1 |
|             2 |
+---------------+
8 rows in set (0.00 sec)

--
---------------------------------------------------------------------
                                                         Baján Ferenc


2013. február 19. 16:06 Dorozsmai Károly írta, <kdorozs at gmail.com>:

> Köszönöm, ezt is ki fogom próbálni :):):)
>
> 2013. február 19. 15:06 Kelemen Mihály írta, <kelemenm at tagdebr.sulinet.hu>
> :
>
> 2013.02.19. 13:05 keltezéssel, Dorozsmai Károly írta:
>>
>>  SQL... Egy cca 350 soros táblában az utolsó öt oszlopban oszloponként az
>>> 1, 2, 3, 4 vagy 5 számok egyike van. A feladat azon sorokat leválogatni,
>>> melyekben egynél több helyen áll 1... Egyenlőre csak sok XOR a tippen, a
>>> kérdés: egyszerűbb nincs? TIA
>>>
>> Számított mező-re néha egyszerűbb feltételt írni.
>>
>> --
>> Üdvözlettel: Kelemen Mihály
>>
>>
>>
>> ______________________________**_________________
>> Techinfo mailing list
>> Techinfo at lista.sulinet.hu
>> Fel- és leiratkozás: http://lista.sulinet.hu/**mailman/listinfo/techinfo<http://lista.sulinet.hu/mailman/listinfo/techinfo>
>> Illemtan: http://www.szag.hu/illemtan.**html<http://www.szag.hu/illemtan.html>
>> Ügyfélszolgálat FAQ: http://sulinet.niif.hu/
>>
>
>
>
> --
> Dorozsmai Károly
> _______________________________________________
> Techinfo mailing list
> Techinfo at lista.sulinet.hu
> Fel- és leiratkozás: http://lista.sulinet.hu/mailman/listinfo/techinfo
> Illemtan: http://www.szag.hu/illemtan.html
> Ügyfélszolgálat FAQ: http://sulinet.niif.hu/
>
>


-- 
--
------------------------------------------
                              Baján Ferenc
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lista.sulinet.hu/pipermail/techinfo/attachments/20130219/3dd496c1/attachment.html>


További információk a(z) Techinfo levelezőlistáról