Mysql optimal cədvəl yaratmaq

Mysql-də cədəvli daha optimal və sürətli etməyə çalışıram. Bir məsələdə çətinlik çəkirəm.
Fərz edək ki xəbər cədvəli yaradıram. Burda bir xəbər eyni anda bu bölmələrdə görünə bilər “slayd, yaxşılar, foto qalereya, video qalereya, seçilmişlər). İndi bu bölmələrin hərəsi üçün cədvəldə ayrı sütun (column) yaratmalıyam? Daha yaxşı həlli yoxdu bu işin?
Məsələn belə etmək istəmirəm:
1. select * from xeber where slayd=1
2. select * from xeber where yaxsilar=1
3. select * from xeber where foto=1

Bütün bu malumatı bir sütun daxilində (məsələn: tip) saxlamaq istəyirəm. Belə olan halda bazaya sorğu necə gedəcək bilmirəm. Çünki bir xəbər eyni anda müxtəlif yerdə görünə bilər.


Yadda saxlama
Kateqoriya: Sual . , , . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (6 cavab var)

(04:24, 20/03/2015 ) #54173

bir sütün daxilində hər birini xüsusi simvollarla ayıra bilərsiniz, məsələn

http://pastebin.com/sxkYYJgf

Sorğunu da ki, like ‘%yaxsilar%’ və.s kimi vermək olar

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (18:10, 20/03/2015 ) #54182

    like nəticə etibari ilə bir tərəfdən məsələni həll etsədə sürəti azaldır. mən sütunların sayını elə sürətə görə azaltmaq istəyirəm

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(15:58, 20/03/2015 ) #54178

Düşündükcə cox variantlar tapmaq olar ilk ağlıma gələn bu oldu.
Bazaya sorğu göndərərkən bölmələri rəqəmlə adlandırırıq
məs:
1=slayd;
2=yaxsilar və s.
Insert into xeber set tip=intval($tip)

sorğunu çekərkən ise
select * from xeber where tip > 0 (bütün bölmələr görünsün)
select * from xeber where tip = 1 (yalnız slayd bölmesinde olan xəbərlər görünsün)

Optimize cəhətdən isə cədvəldə yalnız sizə lazım olan məlumatları çəkin
select * from əvəzine select tip,name və s. from
sorğuda limit qoyun . əgər size yalniz 1 melumat lazımdırsa Limit 1
Sürəti ən çox lənqidən ise RAND() , like ‘%yaxsilar%’ kimi əmrlərdir.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (18:09, 20/03/2015 ) #54181

    Mən bu varinatda istəmirəm axı. Bu variantda etsəm bir xəbəri eyni anda müxtəlif tiplərdə sorğu göndərib alamaq omur ki. Məsələn id-si 1 olan xəbər həm salyda həm də yaxşılarda görünməlidi. əgər … tip=1 göstərsəm bu ancaq slayd olar yox əgər …. tip=2 etsəm onda yaxşılara aid olacaq.

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

      (21:30, 20/03/2015 ) #54190

      bele olar

      select * from xeber where tip = 1 and  tip = 2

      əgər bölmə çoxdursa where – ni bir deyişenede ata bilersiz.

      Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (18:22, 21/03/2015 ) #54218

    Elə ola bilməz axı. bir xəbərin tipi necə həm 1 həm də 2 edə bilərəm? Mənə tipi 1 və 2 olan xəbərlər yox. Bir xəbərə necə iki tip verib onu sonra sorğu ilə almaqdır

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Cənab cavab verdi - Azərbaycandakı supermarket kassalarında işlədilən proqram (4 saat əvvəl)

E. Hacı cavab verdi - Proqramlaşdırma - fəlsəfə (1 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (2 gün əvvəl)

Cənab cavab verdi - kurs diplomu ilə işləyə bilərəm? (3 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (5 gün əvvəl)

E. Hacı cavab verdi - Proqramlaşdırma - fəlsəfə (5 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (6 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (7 gün əvvəl)

E. Hacı cavab verdi - Proqramlaşdırma - fəlsəfə (7 gün əvvəl)

kapiltp cavab verdi - Proqramlaşdırma - fəlsəfə (9 gün əvvəl)

Aysu2009 cavab verdi - Azərbaycan əsgər mahnısının sözlərini ingilis dilinə tərcümə etmək (9 gün əvvəl)

Aysu2009 cavab verdi - Atestat almaq üçün ne etmeliyem? (9 gün əvvəl)

Aysu2009 cavab verdi - Azərbaycan əsgər mahnısının sözlərini ingilis dilinə tərcümə etmək (9 gün əvvəl)

Software Developer cavab verdi - Xamaya başqa nə deyirlər? 6 hərflidir (14 gün əvvəl)

Erol34 cavab verdi - Xamaya başqa nə deyirlər? 6 hərflidir (15 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 608 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23295 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2024