MySQL sorğu

Hər kəsə salam. MySQL sorğuya aid sualım var.
Deməli belə, aşağıda 2 cədvəl qeyd etmişəm.

CREATE TABLE `sites` (
  `id` int(11) NOT NULL auto_increment,
  `site_url` varchar(100) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM;


CREATE TABLE `votes` (
  `id` int(11) NOT NULL auto_increment,
  `site_id` int(11) NOT NULL default '0',
  `user_id` int(11) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM;

Birinci cədvəldə saytların ünvanları olacaq.
İkinci cədvəldə, hər bir istifadəçinin hansı sayta səs verməsi haqqda məlumatlar əlavə ediləcək.
Sualım belədir, necə etmək olar ki, 1 və ya 2 mysql sorğu ilə 2-ci cədvələ əsasən istifadəçinin
1-ci cədvəldə olan saytlardan hansına səs verməyibsə onları emal etsin.
Misalçün 1-ci cədvəldə 20 sayt var, onların 5-nə İD nömrəsi 1 olan, 10-na İD nömrəsi 2 olan, 15-nə İD nömrəsi 3 və s. olan
istifadəçilər səs verib. Belə olduqda yerdə qalan səs verilməyən saytların siyahısı hər bir istifadəçi üçün göstərilsin.
Cavablar`ınızı gözləyəcəm. Təşəkkür!


Yadda saxlama
Kateqoriya: Proqramlaşdırma . , . Qısa keçid.

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

(19:20, 19/09/2011 ) #3961

Ola bilər hər hansı sətirin Tipini də düz qeyd etməmişəm, bunu da nəzərə almanızı istərdim!

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

(22:51, 19/09/2011 ) #3964
 select * from sites s 
where s.id not in (
	select site_id  from votes where user_id=p_user_id
)
Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(22:53, 19/09/2011 ) #3965

Bu variant daha sürətli işləyəcək:

select * from sites s 
where not exists (
	select 1
	from votes v
	where v.site_id=s.site_id and v.user_id=p_user_id
)

p_user_id – sizin user id parametridir.

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

(23:25, 19/09/2011 ) #3966

İmkan olsaydı +10 verərdim. Əla cavab oldu!

Minnətdaram, çox kömək etmiş oldunuz. Allah razı olsun.

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

(23:27, 19/09/2011 ) #3968

Buyurun, xoşdur 🙂

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

Software Developer cavab verdi - Qırılmış nömrə nə vaxt tam bağlanır (6 saat əvvəl)

Emil Imanov cavab verdi - Rus dilindən mətni tərcümə etmək (9 saat əvvəl)

Software Developer cavab verdi - Payoneer kartdan pul çıxartdıqda vergi (2 gün əvvəl)

Software Developer cavab verdi - Wise vasitəsilə bank kartına pul köçürmə (6 gün əvvəl)

Software Developer cavab verdi - Rus dilindən mətni tərcümə etmək (6 gün əvvəl)

Cənab cavab verdi - Almanca söz bazası yığmaq (9 gün əvvəl)

rdrobert cavab verdi - Mikrofon süngərinə yazı (10 gün əvvəl)

rdrobert cavab verdi - Yerli virtual olaraq dost tapmaq platforması (10 gün əvvəl)

rdrobert cavab verdi - Almanca söz bazası yığmaq (10 gün əvvəl)

rdrobert cavab verdi - Playstation 4 almaq, Playsation klub açmaq (10 gün əvvəl)

rdrobert cavab verdi - Proqramistin ixtsasi hansidir? (10 gün əvvəl)

Software Developer cavab verdi - Azercell Kabinetim aplikasiyasında İstəSən tarifi haqqında (12 gün əvvəl)

Software Developer cavab verdi - Proqramistin ixtsasi hansidir? (12 gün əvvəl)

byshako cavab verdi - Google Azərbaycan nömrələrini qəbul etmir (22 gün əvvəl)

rdrobert cavab verdi - Honeygain, passiv gelir (23 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 607 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ş 23237 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

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