teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

5

追記

2018/06/15 05:14

投稿

trafalbad
trafalbad

スコア303

title CHANGED
@@ -1,1 +1,1 @@
1
- WHERE句で指定した行がエラーになることについて
1
+ WHERE句で指定した行が'Invalid column name'とエラーになることについて
body CHANGED
File without changes

4

追記

2018/06/15 05:14

投稿

trafalbad
trafalbad

スコア303

title CHANGED
@@ -1,1 +1,1 @@
1
- Between句で指定した行がエラーになることについて
1
+ WHERE句で指定した行がエラーになることについて
body CHANGED
File without changes

3

質問変更

2018/06/15 05:13

投稿

trafalbad
trafalbad

スコア303

title CHANGED
@@ -1,1 +1,1 @@
1
- プロシージャの変数の条件指定が複雑場合の指定方法がわからな
1
+ Between句で指定した行エラーにることにつ
body CHANGED
@@ -1,41 +1,30 @@
1
+ 下記のSQLでウィンドウ関数で指定した行名'king'を
1
- プロシージャを以下のように設定し
2
+ BETWEENで指定したところ、のようなエラーなりした。
2
3
  ```sql
3
- #ウィンドウ2
4
- declare @brand_id integer;
5
- declare @model_id integer;
6
- declare @cate_id integer;
4
+ Error running query: Invalid column name 'king'.DB-Lib error message 20018, severity 16: General SQL Server error: Check messages from the SQL Server DB-Lib error message 20018, severity 16: General SQL Server error: Check messages from the SQL Server DB-Lib error message 20018, severity 16: General SQL Server error: Check messages from the SQL Server DB-Lib error message 20018, severity 16: General SQL Server error: Check messages from the SQL Server
5
+ Embed
6
+ Download Dataset
7
7
  ```
8
- さらにWHEREで
9
- ```sql
10
- #ウィンドウ2
11
- WHERE
12
- ms.brand_id = @brand_id
13
- and ms.model_id = @model_id
14
- and ms.cate_id = @cate_id
15
- ```
16
- のように条件を指定します。
17
8
 
9
+ 原因をご教授いただけないでしょうか?ちなみにmysqlです。
10
+ また質問の大幅な変更申し訳ありません
18
11
 
19
- しかしプロシージャで宣言した変数は、別のページ(ウィンドウ1)のSQL(最後に掲載)です。
20
- 下記のSQLの「```link```」から飛んだ別のページ(ウィンドウ2)で上記のようにプロシージャを指定しています。
21
-
22
- このように、一つ目のウィンドウのSQLでの変数を、2つ目のウィンドウでプロシージャで変数として指定しました。
23
- これを一つのウィンドウ内にまとめたいのですが、プロシージャの指定方法がわかりません。何かいい方法はないでしょうか?
24
-
25
-
26
-
27
-
28
12
  ```sql
29
- # ウィンドウ1
13
+ WITH bcr AS
30
- select s.brand_id, mb.name_eigo, s.model_id, model.name_eigo model_name_eigo
14
+ (select mb.brand_id, mb.name_eigo, s.model_id, model.name_eigo model_name_eigo,
31
- '<a target="_blank" href="' + 'https://redash.='
15
+ mc.cate_id, mc.cate_name, s.cnt
32
- + convert(varchar, s.cate_id) + '&p_brand_id=' + convert(varchar, s.brand_id) + '&p_model_id=' + convert(varchar, s.model_id) + '">画像Link</a>' link,
33
- s.cnt
34
16
  from (
35
- SELECT ms.brand_id, ms.model_id, ms.cate_id, count(*) cnt
17
+ SELECT ms.brand_id, ms.model_id, ms.cate_id,count(ms.syo_id) cnt
36
18
  FROM M_SYOHIN ms (NOLOCK)
37
19
  JOIN M_KAIIN mk (NOLOCK)
38
20
  ON ms.buyer_id = mk.kaiin_id
21
+ left outer join M_SYOHIN_MODEL msm
22
+ on ms.model_id=msm.model_id
23
+ WHERE ms.kokaidate >= '2008-06-10' AND (msm.deleted IS NULL or msm.deleted='0')
24
+ AND NOT EXISTS (SELECT 1 FROM D_REQRES res (NOLOCK) WHERE res.syo_id = ms.syo_id)
25
+ AND NOT EXISTS (SELECT 1 FROM D_DELEGATE_RES res (NOLOCK) WHERE res.syo_id = ms.syo_id)
26
+ AND mk.status = '1' AND ISNULL(mk.syupin_limit, '0') = '0' AND mk.blacklist = '0'
27
+ AND ms.thm_id <> '136' -- USED商品のテーマは除く
39
28
  group by ms.brand_id, ms.model_id, ms.cate_id
40
29
  ) s
41
30
  left outer join M_BRAND mb
@@ -44,8 +33,28 @@
44
33
  on s.cate_id = mc.cate_id
45
34
  left outer join M_SYOHIN_MODEL model
46
35
  on s.model_id = model.model_id
47
- order by s.cnt desc
36
+ WHERE mb.yuko_flg='0'
48
- ```
37
+ )
49
38
 
39
+ SELECT TOP 10 bcr.brand_id,
40
+ bcr.model_id,
41
+ bcr.cate_id,
50
- 追記
42
+ bcr.cnt,
43
+ ms.syo_id,
44
+ image.url,
45
+ RANK() OVER(ORDER BY bcr.cnt DESC) AS king
46
+ FROM M_SYOHIN ms (NOLOCK)
47
+ JOIN M_KAIIN mk (NOLOCK) ON ms.buyer_id = mk.kaiin_id
48
+ JOIN M_SYOHIN_IMAGES image (NOLOCK) ON ms.syo_id = image.syo_id
49
+ INNER JOIN bcr ON ms.brand_id=bcr.brand_id
50
+ AND ms.model_id=bcr.model_id
51
+ AND ms.cate_id=bcr.cate_id
52
+ WHERE king > 100 AND king < 102
53
+ AND ms.kokaidate >= '2008-06-10'
54
+ AND NOT EXISTS (SELECT 1 FROM D_REQRES res (NOLOCK) WHERE res.syo_id = ms.syo_id)
55
+ AND NOT EXISTS (SELECT 1 FROM D_DELEGATE_RES res (NOLOCK) WHERE res.syo_id = ms.syo_id)
56
+ AND mk.status = '1' AND ISNULL(mk.syupin_limit, '0') = '0' AND mk.blacklist = '0'
57
+ AND ms.thm_id <> '136' -- USED商品のテーマは除く
58
+ AND 1.00 <= king AND king >= 3.00
51
- mysqlのストアドプロシージャです
59
+ ORDER BY bcr.cnt desc
60
+ ```

2

2018/06/15 05:12

投稿

trafalbad
trafalbad

スコア303

title CHANGED
File without changes
body CHANGED
@@ -48,4 +48,4 @@
48
48
  ```
49
49
 
50
50
  追記
51
- mysqlのストアプロシージャです
51
+ mysqlのストアプロシージャです

1

2018/06/13 09:17

投稿

trafalbad
trafalbad

スコア303

title CHANGED
File without changes
body CHANGED
@@ -45,4 +45,7 @@
45
45
  left outer join M_SYOHIN_MODEL model
46
46
  on s.model_id = model.model_id
47
47
  order by s.cnt desc
48
- ```
48
+ ```
49
+
50
+ 追記
51
+ mysqlのストアプロシージャです